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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM