1.錯誤分析以及原因
1.1.sql_mode
sql_mode 是數據庫規范校驗規則,比如這里的sql_mode=only_full_group_by 就是一個校驗規則,會規定分組查詢結果集不能有GROUP BY中沒有出現的列。
1.2.問題原因
mysql 5.7.5 版本及以上版本會出現,mysql 5.7.5版本以上默認的 sql_mode 是包含 only_full_group_by ,這個配置嚴格執行了"SQL92標準"。
2.linux處理方法
1.打開etc/my.cnfvim etc/my.cnf2.在文件中添加以下內容:
sql_mode='STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'3.然后重啟mysqlsystemctl stop mysqldsystemctl start mysqld