MySQL Error: 'main.users.type' isn't in GROUP BY
您在phpMyAdmin 中遇到的錯誤訊息顯示您您的GROUP BY 子句中缺少一列(在本例中為類型)
原因:
MySQL 要求 SELECT 子句中所有非聚合函數(例如 COUNT、SUM)的欄位必須包含在 GROUP BY 中條款。這可確保結果根據這些列正確分組。
修正:
要解決這個錯誤,您需要將缺少的欄位加入GROUP BY子句:
背景:
在SQL92 中,要求SELECT子句中的所有欄位都必須是 GROUP BY 子句的一部分。在 SQL99 中,此限制被放寬,以允許功能上依賴 GROUP BY 子句的列。但是,MySQL 預設允許部分分組,這可能會導致不可預測的結果。
為了確保一致性,可以將@@sql_mode 設為'ONLY_FULL_GROUP_BY':
與此設定下,任何部分GROUP BY 查詢都會導致錯誤,迫使您在子句中包含所有必需的列。
以上是為什麼 MySQL 會拋出「main.users.type」不在 GROUP BY 錯誤中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!