不是瀑布式分组的SQLCASE语句

我有3个类别:

categories   number_units
CAT_A        10 
CAT_B        20
CAT_C        30

如果我对列进行 GROUP BY,categories我将得到上面看到的 3 个类别。但是,如果我想做一个 case 语句,例如:

SELECT CASE WHEN categories LIKE 'CAT%' ...

(要显示所有包含 CAT 的总和,它将排除 CAT_A、_B、_C 等分组)

我如何编写一个将获得以下结果的查询:

categories   sum
CAT          60
CAT_A        10
CAT_B        20
CAT_C        30

回答

许多数据库支持标准grouping sets功能:

select coalesce(category, 'CAT'), sum(number_of_units)
from t
group by grouping sets ((), category);


以上是不是瀑布式分组的SQLCASE语句的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>