有这样一种情况
表1:
字段1 字段2 字段3
A 组1 20
B 组1 30
C 组2 40
D 组1 50
E NULL 60
F 组2 70
G NULL 90
现在要实现对组的汇总 非组的也要汇总
结果
ALL 组1 100
ALL 组2 110
E NULL 60
G NULL 90
解答
SELECT
字段1 = CASE WHEN 字段2 IS NOT NULL THEN 'ALL' ELSE 字段1 END,
字段2,
字段3 = SUM(字段3)
FROM 表1
GROUP BY
CASE WHEN 字段2 IS NOT NULL THEN 'ALL' ELSE 字段1 END,
字段2