数 group_concat
Count in group_concat
我在Mysql table中有这种情况。
-----------------
code gr. state
-----------------
10 a available
10 a sold
10 b available
10 a available
10 a sold
10 a printed
10 b available
10 b sold
10 b available
------------------
我需要对这些数据进行分组,以便分组得到类似
的信息
group a -> available(3), sold(2), printed(1)
group b -> available(2), sold(1), printed(0)
我尝试结合使用 group_concat() 和 count() 但无法获得我需要的结果。
我的目标是每组有 1 行(分组方式可以)
状态总是这 3 个(可用、已售出、已打印)
谢谢帮助
SUM 和 IF 可以给你正确的答案。
SELECT gr,
sum(if(state,'available',1,0)) available,
sum(if(state,'sold',1,0)) sold,
sum(if(state,'printed',1,0)) printed
FROM table
GROUP BY gr
我在Mysql table中有这种情况。
-----------------
code gr. state
-----------------
10 a available
10 a sold
10 b available
10 a available
10 a sold
10 a printed
10 b available
10 b sold
10 b available
------------------
我需要对这些数据进行分组,以便分组得到类似
的信息group a -> available(3), sold(2), printed(1)
group b -> available(2), sold(1), printed(0)
我尝试结合使用 group_concat() 和 count() 但无法获得我需要的结果。
我的目标是每组有 1 行(分组方式可以) 状态总是这 3 个(可用、已售出、已打印)
谢谢帮助
SUM 和 IF 可以给你正确的答案。
SELECT gr,
sum(if(state,'available',1,0)) available,
sum(if(state,'sold',1,0)) sold,
sum(if(state,'printed',1,0)) printed
FROM table
GROUP BY gr