需求:
汇总一个用户不同支付方式的购买的总杯数
buy_num 杯数
pay_code 支付方式
pay_name 支付名称
pay_status 支付状态
ms_order 订单表
ms_user 用户表
SELECT u.id,pay_name,u.username,
sum(buy_num) as buy_num,
count(IF(pay_code = "wxpay", true, null)) as wxpay_count,
count(IF(pay_code = "alipay", true, null)) as alipay_count,
sum(IF(pay_code = "wxpay", buy_num, 0)) as wxpay,
sum(IF(pay_code = "alipay", buy_num, 0)) as alipay
FROM `ms_user` `u` INNER JOIN `ms_order` `od` ON `od`.`user_id`=`u`.`id` WHERE `pay_status` = 1
GROUP BY `user_id`
通过sum(IF(pay_code = "XX", XXX, 0)) 根据不同字段增加汇总
通过count(IF(pay_code = "XX", true, null)) 根据不同字段汇总
本文介绍了一种SQL查询方法,用于汇总用户在不同支付方式下的购买总杯数,包括微信支付和支付宝的使用次数及金额。通过使用SUM和COUNT函数结合IF条件,可以有效地对特定字段进行汇总。
1万+

被折叠的 条评论
为什么被折叠?



