【发布时间】:2022-01-27 00:17:37
【问题描述】:
我有如下表格
| EMPID | MESASURE | | MEASURE_VAL1 |MEASURE_VAL2 |MEASURE_VAL3 |
| -------- | -------------- |---------- |-------------- |--------------
| A | MEASURE1 | 10 | NULL | NULL
| A | MEASURE2 | NULL | 20 | NULL
| A | MEASURE3 | NULL | NULL | 30
| A | MEASURE4 | NULL | NULL | NULL
我想得到结果
| EMPID | MEASURE 1 | MEASURE 2 | MEASURE 3
-------------------------------------------
| A | 10 | 20 | 30
我尝试了 where not null 并且只得到一个值。请建议。谢谢
【问题讨论】:
-
如果后来有人添加了 MMEASURE4 值,您是否希望突然出现 MEASURE 4 列? (那么 MEASURE5、6 和 7 呢?)
-
是的,当度量 4 中没有空值时,
-
对每个 measure_val 使用 MAX 聚合以及按 empid 分组
-
如果一行中超过 1 个度量值不为空,会发生什么情况?