日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

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

發布時間:2024/4/11 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 GROUP BY 子句中 选择列表中的列无效,因为该列没有包含在聚合函数或 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
T-SQL核心語句形式:

SELECT?????--指定要選擇的列或行及其限定?
[INTO ]??????--INTO子句,指定結果存入新表
FROM??????--FROM子句,指定表或視圖
[WHERE ]?????????????????--WHERE子句,指定查詢條件
[GROUP BY ]???????????--GROUP BY子句,指定分組表達式
[HAVING ]????????????????--HAVING子句,指定分組統計條件
[ORDER BY [ASC|DESC]]????--ORDER子句,指定排序表達式和順序

聚合函數:

COUNT:求組中項數,返回int類型整數。

GROUP BY 子句:指定用來放置輸出行的組。指定 GROUP BY 時,選擇列表中任一非聚合表達式內的所有列都應包含在 GROUP BY 列表中,或者 GROUP BY 表達式必須與選擇列表表達式完全匹配。如果 SELECT 子句中包含聚合函數,則計算每組的匯總值。

示例一(Select選擇列表中存在聚合函數):

錯誤的寫法:

SELECT U_ID,House_Addrinfo,COUNT(U_ID) AS CX
FROM???YX_ChuShou
GROUP BY U_ID
ORDER BY CX DESC

這條語句出現"選擇列表中的列 'YX_ChuShou.House_Addrinfo' 無效,因為該列沒有包含在聚合函數或 GROUP BY 子句中。"的錯誤提示。

正確的寫法:

SELECT U_ID,min(House_Addrinfo), COUNT(U_ID) AS CX
FROM YX_ChuShou
GROUP BY U_ID
ORDER BY CX DESC

SELECT U_ID,House_Addrinfo,??COUNT(U_ID) AS CX?
FROM YX_ChuShou?
GROUP BY U_ID ,House_Addrinfo
ORDER BY CX DESC

?
示例二(Select選擇列表中不存在聚合函數):

錯誤的寫法:
select au_fname,au_lname,zip, city,state
from authors
group by city

服務器: 消息 8120,級別 16,狀態 1,行 1
列 'authors.au_fname' 在選擇列表中無效,因為該列既不包含在聚合函數中,也不包含在 GROUP BY 子句中。
服務器: 消息 8120,級別 16,狀態 1,行 1
列 'authors.au_lname' 在選擇列表中無效,因為該列既不包含在聚合函數中,也不包含在 GROUP BY 子句中。
?
正確的寫法:
select au_fname,au_lname,zip, city,state
from authors
group by city,au_lname,au_fname,zip,state

或:
select au_fname,au_lname,zip, city,state
from authors
order by city????---使用order by 子句進行排序

即指定 GROUP BY 時,選擇列表中任一非聚合表達式內的所有列都應包含在 GROUP BY 列表中,或者 GROUP BY 表達式必須與選擇列表表達式完全匹配。

?

?

?

小白:因為結果是一個表,所以一般不會出現???select *,sum(job_id)這么寫的,不然sum就一個值,你讓它跟誰并列顯示一行去???

?

如果 select job_id,job_desc,sum(max_lvl) from jobs group by jobs.job_id,job_desc

非要并列顯示點什么,那對應列都應寫在group by里,確保該列一個值就出現一次, 一個值對應一個sum

?

有一個列就加進group by一個

總結

以上是生活随笔為你收集整理的GROUP BY 子句中 选择列表中的列无效,因为该列没有包含在聚合函数或的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。