【发布时间】:2020-12-31 15:49:03
【问题描述】:
select
Count(CASE
WHEN quantity * saleprice <= 400 THEN 'B'
WHEN quantity * saleprice between 400 and 999 THEN 'S'
WHEN quantity * saleprice between 1000 and 2099 THEN 'G'
WHEN quantity * saleprice >=2100 THEN 'D' END) AS Level,
c.customerid CountOfCustomers
from customers c join sales s on c.customerid = s.customerid join saleitem si on s.saleid = si.saleid
group by c.customerid
我需要按此 Case 语句中的每个级别进行聚合,但是当我将整个 case 语句放在 group by 子句中时,我只能得到一行输出。
【问题讨论】:
-
请提供样本数据和期望的结果。不清楚您所说的“按每个级别汇总”是什么意思。
标签: sql group-by count sum case