| 来源 | 多个布尔/枚举标志 |
|---|---|
| 收益 | 减少事实列与维度数量 |
| 维护 | 新增标志需重建组合 |
示例
示例
-- dim_order_flag(is_first, has_gift, is_urgent, ...)
SELECT d.is_first, sum(f.amount) FROM fact_order f JOIN dim_order_flag d ON f.flag_key=d.flag_key GROUP BY 1;标志组合数增长快时,评估拆回事实表的收益平衡。
把多个低基数的标志位(是否首单、是否含赠品等)合并成一张杂项维度,避免事实表字段膨胀与维度表碎片化。
| 来源 | 多个布尔/枚举标志 |
|---|---|
| 收益 | 减少事实列与维度数量 |
| 维护 | 新增标志需重建组合 |
-- dim_order_flag(is_first, has_gift, is_urgent, ...)
SELECT d.is_first, sum(f.amount) FROM fact_order f JOIN dim_order_flag d ON f.flag_key=d.flag_key GROUP BY 1;