| 做法 | UPDATE 或 MERGE 覆盖属性 |
|---|---|
| 历史 | 不保留 |
| 成本 | 较低,维度表不增长 |
| 适合 | 错别字修正、无历史分析价值的字段 |
覆盖更新
覆盖更新
MERGE INTO dim_user t
USING stg_user s
ON t.user_id = s.user_id
WHEN MATCHED AND t.user_name <> s.user_name THEN
UPDATE SET t.user_name = s.user_name
WHEN NOT MATCHED THEN
INSERT (user_sk, user_id, user_name, city, level)
VALUES (s.user_sk, s.user_id, s.user_name, s.city, s.level);覆盖后无法回答去年这位用户是什么等级,涉及等级、组织、价格带等分析属性时需谨慎。