Slide 35
Slide 35 text
操作変更ログを用いた有効日付範囲の生成
履歴が重要な項目について、操作変更ログを記録したテーブルが存在することがある。
LEAD 関数を使って、操作変更ログからSCDタイプ2の形式にデータを持ち替えるビューを作ると便利。
記録日 商品名 価格
2025-01-01 ハンバーガー 100円
2025-04-01 ハンバーガー 120円
2025-01-01 ポテト 150円
create view 商品価格 as (
select
商品名,
価格,
記録日 as 有効開始日,
ifnull(
lead(記録日) over(partition by 商品名 order by 記録日),
date(“9999-12-31”)
) as 有効終了日
from
商品価格改訂履歴
)
商品価格改訂履歴
商品名 価格 有効開始日 有効終了日
ハンバーガー 100円 2025-01-01 2025-04-01
ハンバーガー 120円 2025-04-01 9999-12-31
ポテト 150円 2025-01-01 9999-12-31
商品価格[履歴値]
BEAM✲ > モデルストーミングの手順 > 2. ディメンションのモデリング > ディメンションの履歴 訳者あとがき
35