亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

MySQL查詢出現(xiàn)1055錯誤的原因及解決方法

 更新時間:2023年05月18日 10:07:53   作者:葬空吟  
Mysql在使用過程中經常遇到錯誤,都是本人在實際應用中處理檢驗過的,本文對常見錯誤出現(xiàn)的代碼進行詳細分析,下面這篇文章主要給大家介紹了關于MySQL查詢出現(xiàn)1055錯誤的原因及解決方法,需要的朋友可以參考下

當SQL語句查詢報1055錯誤時的解決方法

報錯內容如下

請?zhí)砑訄D片描述

報錯原因

1.SQL語句中使用了group by,并且不需要分組的字段沒有加上any_value()函數(shù)

2.MySQL數(shù)據(jù)庫版本是大于5.7,報錯信息中最后有一句sql_mode=ONLY_FULL_GROUP_BY,是因為MySQL數(shù)據(jù)庫的配置中sql_mode包含ONLY_FULL_GROUP_BY,導致使用group by會報錯

ONLY_FULL_GROUP_BY 含義:對于GROUP BY聚合操作,如果在SELECT中的列,沒有在GROUP BY中出現(xiàn),那么這個SQL是不合法的,因為列不在GROUP BY從句中。在嚴格模式下,不要讓GROUP BY部分中的查詢指向未選擇的列,否則報錯。

解決辦法

解決辦法共計3種,兩種需要改配置,一種不需要

1.不修改任何配置文件,但給不需要分組的字段上加上any_value()函數(shù)

SELECT any_value(id),value FROM table_name group by value;

這種方法不需要改配置,但是每條使用group by的SQL語句都要加上any_value()函數(shù)

2.臨時更改配置,下次重啟電腦或者MySQL服務時會失效

首先在數(shù)據(jù)庫中查詢下列代碼

select @@global.sql_mode

得到如下結果:

請?zhí)砑訄D片描述

發(fā)現(xiàn)里面有ONLY_FULL_GROUP_BY

在查詢中繼續(xù)執(zhí)行下列代碼,其中等號后面的就是剛才查到的代碼去掉 ONLY_FULL_GROUP_BY 的部分

set global sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

這時再重新測試之前報錯的SQL語句,應該會可用了

如果不可用,再執(zhí)行下列兩條語句:

select @@sql_mode

set sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION';

就可以了

3.永久更改配置,下次重啟電腦或者MySQL服務時不會失效

第一步,先運行下列語句

select @@sql_mode

第二步,打開MySQL的配置文件(window的時my.ini,一般會在安裝目錄的根目錄,Linux是my.cnf,一般會放

在/etc/my.cnf,/etc/mysql/my.cnf。如果找不到,可以用find命令查找)

第三步,在配置文件中找到 [mysqld],在他下面填入

[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

第四步,停止之后再重啟MySQL

停止mysqlsystemctl stop mysql或者net stop mysql

重啟mysqlsystemctl restart mysql或者net start mysql

window用戶可以在服務中重啟MySQL:win+R,輸入services.msc,點確定找到mysql服務,重啟即可解決問題

總結

到此這篇關于MySQL查詢出現(xiàn)1055錯誤的原因及解決方法的文章就介紹到這了,更多相關MySQL查詢報錯1055內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 批量替換 MySQL 指定字段中的字符串

    批量替換 MySQL 指定字段中的字符串

    批量替換 MySQL 指定字段中的字符串是數(shù)據(jù)庫應用中很常見的需求,但是有很多初學者在遇到這種需求時,通常都是用腳本來實現(xiàn);其實,MySQL 內置的有批量替換語法,效率也會高很多;想了解具體方法,繼續(xù)閱讀本文吧 :)
    2009-09-09
  • mysql decimal類型判斷是否為0

    mysql decimal類型判斷是否為0

    在MySQL中,DECIMAL是一種用于存儲精確小數(shù)的數(shù)據(jù)類型,本文主要介紹了mysql decimal類型判斷是否為0,具有一定的參考價值,感興趣的可以了解一下
    2024-02-02
  • mysql中insert into的基本用法和一些示例

    mysql中insert into的基本用法和一些示例

    INSERT INTO用于向MySQL表插入新行,支持單行/多行及部分列插入,下面給大家介紹mysql中insert into的基本用法和一些示例,感興趣的朋友一起看看吧
    2025-06-06
  • MySQL組合索引與最左匹配原則詳解

    MySQL組合索引與最左匹配原則詳解

    這篇文章主要給大家介紹了關于MySQL組合索引與最左匹配原則的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Mysql具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-03-03
  • mysql中的general_log(查詢日志)開啟和關閉

    mysql中的general_log(查詢日志)開啟和關閉

    這篇文章主要介紹了mysql中的general_log(查詢日志)開啟和關閉問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • mysql視圖的學習和使用方式

    mysql視圖的學習和使用方式

    這篇文章主要介紹了mysql視圖的學習和使用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2016-09-09
  • mysql 查詢第幾行到第幾行記錄的語句

    mysql 查詢第幾行到第幾行記錄的語句

    mysql 查詢第幾行到第幾行記錄 查詢最后一行和第一行記錄 查詢前幾行和后幾行記錄
    2011-07-07
  • MySQL導入導出助手類庫MysqlHelper安裝使用

    MySQL導入導出助手類庫MysqlHelper安裝使用

    這篇文章主要為大家介紹了MySQL導入導出助手類庫MysqlHelper安裝使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • MySQL5.6.22安裝配置方法圖文教程

    MySQL5.6.22安裝配置方法圖文教程

    這篇文章主要為大家詳細介紹了MySQL5.6.22安裝配置方法圖文教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • mysql把一段數(shù)據(jù)變成一個臨時表

    mysql把一段數(shù)據(jù)變成一個臨時表

    這篇文章主要介紹了mysql把一段數(shù)據(jù)變成一個臨時表,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-02-02

最新評論