首頁 >資料庫 >mysql教程 >為什麼 MySQL 會拋出「SELECT 清單的表達式不在 GROUP BY 子句中」錯誤,如何修復它?

為什麼 MySQL 會拋出「SELECT 清單的表達式不在 GROUP BY 子句中」錯誤,如何修復它?

Barbara Streisand
Barbara Streisand原創
2024-11-28 07:53:14306瀏覽

Why Does MySQL Throw a

如何解決MySQL 中的「Expression of SELECT List Not in GROUP BY Clause」錯誤

在MySQL 中,執行查詢有時會導致與sql_mode 相關的sql_mode 環境。其中一個錯誤是:

當查詢在SELECT 清單中包含未包含在GROUP BY 子句中且未聚合的列(例如,使用SUM、COUNT 等)時,就會發生此錯誤。 )。要解決此問題,必須修改查詢以在 GROUP BY 子句中包含非聚合列或對其進行聚合。

在提供的 MySQL 查詢中:

非聚合列-聚合列是disponible_v。要解決該錯誤,請將其加入GROUP BY 子句中:

或者,使用SUM 或AVG 等函數聚合disponible_v:

對於8.0 之前的MySQL版本,您可能需要透過新增以下內容來調整MySQL 設定檔/etc/mysql/conf.d/mysql.cnf中的 sql_mode 設定lines:

更改設定檔後重新啟動 MySQL。

以上是為什麼 MySQL 會拋出「SELECT 清單的表達式不在 GROUP BY 子句中」錯誤,如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn