这是我的示例表(假设我只有 3 个类别):
id user item category
----------------------------
1 myuser item1 1
2 myuser item2 2
3 myuser item3 2
4 myuser item4 2
5 myuser item5 2
6 myuser item6 3
我正在尝试对类别求和以获得此结果的查询:
user cat_1 cat_2 cat_3
--------------------------------
myuser 1 4 1
什么是最好的方法? 谢谢
编辑:扩展方法(抱歉我的错误)
我的表格如下:
id user item category total
------------------------------------
1 myuser item1 1 2
2 myuser item2 2 6
3 myuser item3 3 4
我怎样查询它才能得到这个结果:
user cat_1 cat_2 cat_3
--------------------------------
myuser 2 6 4
最佳答案
如果您确定只能使用 3 个类别:
select
user,
sum(if(category=1,1,0)) cat_1,
sum(if(category=2,1,0)) cat_2,
sum(if(category=3,1,0)) cat_3
from table
group by user
关于MySQL 查询 - 计算查询中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21592787/