gpt4 book ai didi

mysql - 如何向 GROUP BY 的结果添加一个额外的列,其值与条件匹配?

转载 作者:行者123 更新时间:2023-11-29 09:42:18 25 4
gpt4 key购买 nike

我正在尝试使用 GROUP BY 生成表的摘要,但我想添加一个列,该列的值与原始表中的条件匹配。我要检查的条件是 style = 2,以便结果中显示文件名与该样式匹配的新列。

这就是原始表格的样子:

category  |  value | style | filename
A | 8 | 0 | AAA
B | 4 | 2 | BBB
B | 6 | 1 | CCC
A | 3 | 2 | DDD
A | 6 | 1 | EEE
C | 7 | 2 | FFF
B | 5 | 1 | GGG
A | 3 | 1 | HHH

这就是我想要的:

category  |  total_value   | filename
A | 20 | DDD
B | 15 | BBB
C | 7 | FFF

我尝试了这个查询,但选择的文件名是 MINIMUM,而不是匹配 style = 2 的文件名:

SELECT category, SUM(value) AS total_value, MIN(filename) AS filename FROM data GROUP BY category;

最佳答案

如果我理解正确,你需要这个:

SELECT category, SUM(value) AS total_value, 
MIN(case when style = 2 then filename end) AS filename
FROM data GROUP BY category;

关于mysql - 如何向 GROUP BY 的结果添加一个额外的列,其值与条件匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56361385/

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