我正在使用 Rollup 子句,您可以了解它如何显示不同级别的聚合
WITH NULL
值显示不同级别的 rollups
例如rollup(year,month,week)
将显示每个级别的小计。
我希望将其汇总,但只想看到最高级别的聚合。 所以我不想看到任何
null
值。
知道我该怎么做吗?
问候 曼乔特
“仅最高级别的聚合”是什么意思?
您可以通过检查列是否已分组来避免 NULL,如下所示:
SELECT CASE WHEN Grouping(GroupID) = 1 THEN '#ALL' ELSE GroupID END AS GroupID,
CASE WHEN Grouping(SubGroupID) = 1 THEN '#ALL' ELSE SubGroupID END AS SubGroupID,
Sum(Value)
FROM Table
GROUP BY GroupID,
SubGroupID
WITH ROLLUP
它将显示#ALL而不是NULL。