如何使用Group By对表的两列分组?

问题:对于下列order表,求每个顾客每天买了多少个商品?

order_dateproduct_idcustomer_idnumber
2020-11-25711
2020-11-251213
2020-11-265312
2020-11-26124
2020-11-26321
2020-11-261627
2020-11-26332
2020-11-27631

分析:对 (customer_id, order_date)分组,每组值都是一个独立的分组,当这个组合里的任一个值为null时,都是一个独立的分组,比如 (1, null)、(null,2020-11-25)、(null,null)都是独立分组

select sum(number) as day_buy_number 
from order 
group by customer_id, order_date

对 (customer_id, order_date)分组后的同一组结果具有相同的背景色

 

结果是:

order_datecustomer_idproducts_number
2020-11-2632
2020-11-2731
2020-11-26212
2020-11-2514
2020-11-2612

注意:select列中使用聚集函数时,会忽略值为null的记录,比如对 number列使用 sum函数,当有值 1、2、null时,1、2被统计,null被忽略

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值