SQL柱状图:大于10个订单组为;10+;“桶”;
问题是:创建一个sql查询,以提供x个人的数量直方图,他们下了y个订单。任何订单超过10张的人都应分组到“10+”桶中 第1步:我创建了一个“诱惑力”如下:SQL柱状图:大于10个订单组为;10+;“桶”;,sql,sql-server,histogram,Sql,Sql Server,Histogram,问题是:创建一个sql查询,以提供x个人的数量直方图,他们下了y个订单。任何订单超过10张的人都应分组到“10+”桶中 第1步:我创建了一个“诱惑力”如下: Customerid Order_Count ---------- ----------- CENTC 1 GROSR 2 LAZYK 2 LAUGB 3 NORTS 3 FRANR 3 步骤2:我尝试了创建直方图存储桶的floor
Customerid Order_Count
---------- -----------
CENTC 1
GROSR 2
LAZYK 2
LAUGB 3
NORTS 3
FRANR 3
步骤2:我尝试了创建直方图存储桶的floor函数,但无法使用以下语法访问存储桶“10+”
select bucket, count(*) from
(select floor(order_count/10.00)*10 as bucket from TempTable
) t group by bucket
请建议其他合适的方法。谢谢 您可以使用
case
表达式定义存储桶,然后为最终摘要进行聚合:
select (case when order_count >= 10 then '10+' else CustomerId
end) as CustomerId,
sum(Order_Count) as Order_Count
from temptable
group by (case when order_count >= 10 then '10+' else CustomerId
end);