gpt4 book ai didi

mysql - 群组功能使用无效(无条件)

转载 作者:行者123 更新时间:2023-11-29 20:55:36 25 4
gpt4 key购买 nike

表格如下所示:

| colA | colB | colC | colD |some other cols
-----------------------------
|double|double| int | int |some other datatyps

我想选择每列的总和并按它们分组。目前我没有必须真实的条件。这是我的查询:

SELECT SUM(colA) as 'cola', SUM(colB)as 'colb', SUM(colC) as 'colc', SUM(colD) as 'cold', SUM(colA - colB)as 'sub'
FROM table_name
GROUP BY cola,colb,colc,cold,sub

然后它会创建错误:组函数的使用无效

我红色了几篇关于这个错误的帖子,但它们都有一个 WHERE 条件和一个 HAVING 解决了这个问题,但我没有条件。有什么想法可能导致此错误消息吗?

最佳答案

您根本不需要 GROUP BY 子句:

SELECT SUM(t.colA) as 'cola',
SUM(t.colB)as 'colb',
SUM(t.colC) as 'colc',
SUM(t.colD) as 'cold',
SUM(t.colA - t.colB)as 'sub'
FROM table_name t

GROUP BY 子句用于获取每个 GROUP 的计算/聚合/不同值,如 ID ,因为您想要总计总而言之,不需要 group by 子句

GROUP BY cola,colb,colc,cold,sub

这一行意味着每个组都是 cola,colb,colc,cold,sub 的组合,但由于 sub 是一个计算列,所以还不存在!不要将其包含在您的组中

如果您想区分重复项,请使用 DISTINCT ,或从分组依据中删除 sub 列:

GROUP BY t.cola,t.colb,t.colc,t.cold

关于mysql - 群组功能使用无效(无条件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37653089/

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