gpt4 book ai didi

mysql - 如何在一个查询中将调节器列的 SELECT 与列的 SUM 的 SELECT 结合起来?

转载 作者:太空宇宙 更新时间:2023-11-03 11:25:11 25 4
gpt4 key购买 nike

这是我的查询,没有按预期工作:

SELECT `id`, SUM(`column1`) as `c1`, SUM(`column2`) AS `c2` 
FROM `table`
WHERE `id` IN (18, 19, 20, 21)

我想从中得到什么:我想为每个 id 获取 SUM(column1)SUM(column2)WHERE 部分列出,以及与之匹配的“不同” id。我不知道如何在一个查询中将常规列 SELECT 与 SUM 列 SELECT 结合起来——如果可能的话?示例:

`table` structure:
id column1 column2
18 5 3
18 5 3
20 10 10
20 10 5
20 10 5
21 1 1
22 10 10

Should return:
id c1 c2
18 10 6
20 30 20
21 1 1

最佳答案

你应该对行进行分组:

SELECT `id`, SUM(`column1`) as `c1`, SUM(`column2`) AS `c2` 
FROM `table`
WHERE `id` IN (18, 19, 20, 21)
GROUP BY `id`

SUM、COUNT 和其他数学函数适用于 GROUP BY。

如果您需要过滤那些特殊字段,请使用 HAVING 而不是 WHERE: https://www.w3schools.com/sql/sql_having.asp

关于mysql - 如何在一个查询中将调节器列的 SELECT 与列的 SUM 的 SELECT 结合起来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54931728/

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