我有一张产品销售表,可能如下所示:
product | value | ID
lux | 6 | 1
lux | 76 | 1
lux | 3 | 2
lux | 474 | 1
lux | 474 | 2
sonu | 12 | 1
什么是mysql代码:如果名称相同且新行中的id为1,我想添加所有值,如果名称相同且另一行中id为2,我还想添加所有值 像是
product | sum1| sum2
lux | 556 | 477
sonu | 12 | 0
答案 0 :(得分:1)
您可以在case
中使用sum
表达式:
SELECT product,
SUM (CASE id WHEN 1 THEN value ELSE 0 END) AS sum1,
SUM (CASE id WHEN 2 THEN value ELSE 0 END) AS sum2
FROM my_table
GROUP BY product