MySQL 錯誤#1140:了解「GROUP 欄位的混合」問題
MySQL 錯誤#1140,「GROUP 欄位的混合(如果沒有GROUP 列,則MIN()、MAX()、COUNT()、...)是非法的當您嘗試聚合資料(例如,使用COUNT() 等函數)而不對結果進行分組時,就會出現「GROUP BY 子句」。 ,且缺少GROUP BY 子句時,可能會發生這種情況。查詢舉例說明了此問題:
使用以下命令執行此查詢在服務器上啟用ONLY_FULL_GROUP_BY 設置會導致錯誤消息:
解決方案:SELECT COUNT(node.nid), node.nid AS nid, node_data_field_update_date.field_update_date_value AS node_data_field_update_date_field_update_date_value FROM node node LEFT JOIN content_type_update node_data_field_update_date ON node.vid = node_data_field_update_date.vid WHERE node.type IN ('update') ORDER BY node_data_field_update_date_field_update_date_value DESC要解決此問題,必須停用ONLY_FULL_GROUP_BY 設定或強制執行SQL中的分組操作
#1140 - Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause`
停用ONLY_FULL_GROUP_BY:
這可以透過更改MySQL 設定檔並設定以下參數來實現:only_full_group_by = 0透過應用這些解決方案中的任何一個,您可以繞過「混合群組列」錯誤並成功檢索聚合資料。
以上是如何解決 MySQL 錯誤 #1140:「混合群組列」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!