今天在Navicat上執行SQL增刪改查數據操作的時候出現了下面這個問題
Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
在bing.com網上查看了許多人的總結,解決了這個問題
原因:這是數據庫的sql_mode設置的有問題。Mysql可以支持不同的SQL模式,不同的SQL模式會有不同的語法,執行不同的數據校驗簡查。
首先,可以先查看一下數據庫現在的sql_mode的值,sql語句為:
select version(), @@sql_mode;
獲取結果可能如下,不同的設置查詢出來的有區別:
然后可以使用如下語句,去設置自己需要的sql_mode.
SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));
網上還提供了一勞永逸的方法,但是我只使用了第一條,如果問題還沒解決的可以參考原文鏈接
https://blog.csdn.net/u014520745/article/details/76056170