我想获得每个用户每月的总和(总收入)并显示每个事件字段。
所以我需要显示这些列
我的桌子
order id, user, month, event, gross
1 jack october event2 30
2 jack november event3 20
3 jack november event3 20
4 jack november event2 30
5 sam november event2 30
6 john october event3 20
对于杰克来说,结果将是
record1
user = jack
month = november
event = event2, event3
total = 70
record2
user = jack
month = october
event = event3
total = 30
因此,我认为解决方案将在一个记录中串联多个事件字段。我已经看到UNION做这样的事情,在一列中创建逗号分隔的值,但是不确定如何在这里使用它。
最佳答案
我认为您正在寻找GROUP_CONCAT()
这样的事情会起作用:
SELECT user, month, GROUP_CONCAT(event), SUM(gross)
FROM xyz
GROUP BY month
关于mysql - 在一条记录sql中串联多个字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23202764/