高版本Mysql使用group?by分組報錯的解決方案
Mysql5.7版本以上對group by 分組有了新需求,要求group by 后的字段要與select后查詢的字段一致,否則就會報錯,報錯信息如下:
#1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘id’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
通過報錯分析是由于group by 后的分組字段與查詢字段不一致導(dǎo)致。
解決方案:
方法一:補(bǔ)全group by 后字段(不推薦這種方法,有時要查詢的字段很多而且字段的內(nèi)容不能保證不重復(fù),如果全部補(bǔ)齊會造成查詢數(shù)據(jù)丟失)。
方法二:修改配置
1)使用navicat管理工具連接mysql數(shù)據(jù)庫
打開navicat管理工具,按F6打開命令界面,依次輸入以下語句
select @@global.sql_mode;
set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';`
set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
截圖如下:
再重新執(zhí)行就會發(fā)現(xiàn)不再報錯。
2)使用cmd命令行更改
按win+r打開運(yùn)行界面,輸入cmd打開命令行界面
打開后切換目錄到mysql安裝包的bin目錄下,具體操作如下圖(根據(jù)自己路徑切換)
連接數(shù)據(jù)庫,輸入mysql -u root -p,按回車再輸入數(shù)據(jù)庫密碼
連接成功后再依次輸入以下語句
select @@global.sql_mode;
set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
set session sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
截圖如下:
至此配置結(jié)束
總結(jié)
到此這篇關(guān)于高版本Mysql使用group by分組報錯的解決方案的文章就介紹到這了,更多相關(guān)Mysql使用group by分組報錯內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
VS2019連接MySQL數(shù)據(jù)庫的過程及常見問題總結(jié)
今天想使用VS2019可以配合MySQL一起使用,在配置過程中出現(xiàn)一些錯誤,下面通過本文給大家分享VS2019連接MySQL數(shù)據(jù)庫的過程及常見問題總結(jié),感興趣的朋友跟隨小編一起看看吧2021-11-11MySQL中Like模糊查詢速度太慢該如何進(jìn)行優(yōu)化
在業(yè)務(wù)場景中經(jīng)常會用到like模糊查詢,但是大家都知道,like是用不到索引的,所以當(dāng)數(shù)據(jù)量非常大時,速度會非常慢,這篇文章主要給大家介紹了關(guān)于MySQL中Like模糊查詢速度太慢該如何進(jìn)行優(yōu)化的相關(guān)資料,需要的朋友可以參考下2021-12-12MySQL replace函數(shù)替換字符串語句的用法
MySQL replace函數(shù)我們經(jīng)常用到,下面就為您詳細(xì)介紹MySQL replace函數(shù)的用法,希望對您學(xué)習(xí)MySQL replace函數(shù)方面能有所啟迪。2010-12-12MyEclipse連接MySQL數(shù)據(jù)庫圖文教程
這篇文章主要為大家詳細(xì)介紹了MyEclipse連接MySQL數(shù)據(jù)庫圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-10-10