我有三排像这样

merchant    col1    col2    col3    col4
Al's        1       0        0      0
Al's        0       2        0      0
Al's        0       0        3      0
Al's        0       0        0      4


我想把它变成:

merchant    col1    col2    col3    col4
Al's        1       2        3      4


当我尝试实现上述目标时,我尝试按商家对其进行分组。当我做:

group by merchant


在查询结束时,我得到了这个结果

merchant    col1    col2    col3    col4
Al's        1       0        0      0


所以基本上只有第一行。有什么办法可以满足我的需求?非常感谢你

最佳答案

像这样

select merchant,max(col1),max(col2),max(col3)..
from yourtable
group by merchant


或如果其他值始终为零,则

select merchant,sum(col1),sum(col2),sum(col3)..
from yourtable
group by merchant

关于mysql - Mysql:将三行分组在一起,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32124686/

10-12 21:18