zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

数据库:选择列表中的列 ‘***‘ 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中

数据库列表 函数 选择 没有 by 包含 group
2023-09-14 09:16:27 时间

转载:https://blog.csdn.net/Mxeron/article/details/111924334

选择列表中的列 ‘***’ 无效,因为该列没有包含在聚合函数或 GROUP BY 子句中
GROUP BY 子句:指定用来放置输出行的组。指定 GROUP BY 时,选择列表中任一非聚合表达式内的所有列都应包含在 GROUP BY 列表中,或者 GROUP BY 表达式必须与选择列表表达式完全匹配。如果 SELECT 子句中包含聚合函数,则计算每组的汇总值。

错误写法:SELECT name,sex,SUM(age) FROM [Qiu].[dbo].[students] group by sex
正确写法:SELECT name,sex,SUM(age) FROM [Qiu].[dbo].[students] group by sex,name

使用group by 的注意事项:
1、Select指定的每一列都应该出现在Group By子句中,除非对这一列使用了聚合函数;
2、不能Group By在表中不存在的列;
3、进行分组前可以使用Where子句消除不满足条件的行;(分组前!!!)
4、使用Group By子句返回的组没有特定的顺序,可以使用Order By子句指定次序。