sql语句同一时间下不同字段的数量

来源:互联网 发布:中标麒麟怎么安装软件 编辑:程序博客网 时间:2024/05/01 01:42

今天做项目遇见个需求,就是查询在同一个时间段,订单总数/付款单数/完成单数/退货单数的数量,数据库表结构是这样子的
其中10表示已付款,40表示交易完成,60表示退货
这里写图片描述
sql语句如下,

SELECTcount(*) AS "总数",sum(case order_status when 10 then 1 else 0 end) AS '付款单数',sum(case order_status when 40 then 1 else 0 end) AS '完成单数',sum(case order_status when 60 then 1 else 0 end) AS '退货单数'FROM cl_order_score_report GROUP BY count_hour

查询结果如下
这里写图片描述
*这里主要用到了sum函数,重点在于sum和sum中的case when语句,涨知识了

1 0
原创粉丝点击