gpt4 book ai didi

mysql - 在 SQL 中组合条目

转载 作者:行者123 更新时间:2023-11-29 01:20:18 26 4
gpt4 key购买 nike

我不确定如何在 SQL 中执行以下操作。我尝试以不同的方式使用 GROUP BY 和 HAVING,但都不起作用。

我有一个这样的表:

Title   Value 1   Value 2 ...
0 3 7
1 4 8
2 5 9
(empty) 6 10
0 1 2

这里,(empty) 不是字符串。我只是把它放在那里以表明该表格单元格是 empty(null)。我想只显示一个更改的表格。标题为 0 或(空) 的所有行都被“组合” 成一行,标题为 0,值 1 = Sum (所有值 1),值 2 = Sum(所有值 2)。其他一切都保持不变。所以,在上面的例子中,我想看到:

Title   Value 1   Value 2 ...  
0 10 19
1 4 8
2 5 9

有人可以帮忙吗?

谢谢!

最佳答案

这是一个带有case的聚合查询:

select (case when title is null or title = 0 then 0 else title end) as title,
sum(value1) as value1, sum(value2) as value2
from t
group by (case when title is null or title = 0 then 0 else title end)
order by title;

如果你愿意,你也可以使用逻辑:

select coalesce(title, 0) as title,
sum(value1) as value1, sum(value2) as value2
from t
group by coalesce(title, 0)
order by title;

关于mysql - 在 SQL 中组合条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38850305/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com