SQL Server报错:选择列表中的列无效,因为该列没有包含在聚合函数或 GROUP BY 子句中

聚合函数:聚合函数就是对一组值进行计算后返回单个值。

包括:

COUNT(统计函数);
COUNT_BIG(统计函数);
SUM(求和函数);
AVG(求平均值函数);
MAX(最大值函数);
MIN(最小值函数);
STDEV(标准偏差值函数);
VAR(方差值函数);
HAVING(HAVING子句仅用于带有 GROUP BY 子句的查询语句中,WHERE子句用于每一行数据的筛选(在变成一个组的某一部分之前),而HAVING子句用于分组的聚合值的筛选)

-----------------------------------------------------------------

标题错误的解决方案:指定 [GROUP BY] 时,select语句中所有的非聚合函数列都应与 GROUP BY 列表匹配,或者 GROUP BY 列表必须与select语句中所有的非聚合函数列完全匹配。

如:

select id,x,y,max(time)
from[Test1].[dbo].[seven]
group by id

将会发生标题的错误。可以改为:

select id,x,y,max(time)
from[Test1].[dbo].[seven]
group by id,x,y

参考自:

https://www.cnblogs.com/limeiky/p/5499163.html

https://www.cnblogs.com/Brambling/p/6711937.html

猜你喜欢

转载自www.cnblogs.com/PER10/p/11279146.html