最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL5.7版本sql_mode=only_full_group_by問題及解決過程

 更新時間:2026年07月25日 15:30:40   作者:Ch3nnn  
本文詳細解析了MySQL 5.7中GROUP BY查詢報錯1055的原因,即sql_mode默認開啟了only_full_group_by模式,你將學會通過修改sql_mode或使用any_value()函數(shù)來解決問題,并了解如何永久配置以兼容舊版查詢,確保數(shù)據(jù)庫操作順暢

線上服務器數(shù)據(jù)庫查詢使用了 GROUP BY 居然報出了

1055 - Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'csc_risk.a.DefaultDate' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by, Time: 0.035000s 

于是把部分數(shù)據(jù)遷移到本地進行測試,  發(fā)現(xiàn)sql語句可以執(zhí)行

查看本地數(shù)據(jù)庫版本

SELECT VERSION()

 查詢線上數(shù)據(jù)庫版本發(fā)現(xiàn)確實是5.7版本

5.7.24

原因分析

MySQL5.7版本默認設置了 mysql sql_mode = only_full_group_by 屬性,導致報錯。

知道原因就好辦, 查詢怎么解決 

下載安裝的是最新版的mysql5.7.x版本,默認是開啟了 only_full_group_by 模式的,但開啟這個模式后,原先的 group by 語句就報錯,然后又把它移除了。

一旦開啟 only_full_group_by ,感覺,group by 將變成和 distinct 一樣,只能獲取受到其影響的字段信息,無法和其他未受其影響的字段共存,這樣,group by 的功能將變得十分狹窄了

only_full_group_by 模式開啟比較好。因為在 mysql 中有一個函數(shù): any_value(field) 允許,非分組字段的出現(xiàn)(和關閉 only_full_group_by 模式有相同效果)。

1、查看sql_mode

SELECT @@sql_mode;

查詢出來的值為:

ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

2、去掉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';

3、上面是改變了全局sql_mode 對于新建的數(shù)據(jù)庫有效

對于已存在的數(shù)據(jù)庫,則需要在對應的數(shù)據(jù)下執(zhí)行:

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';

以上方式臨時解決沒有問題的,數(shù)據(jù)庫重啟就需要重新設置

修改MySQL配置文件

Linux下my.cnf或Windows下My.ini

注意在[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

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • MySQL中DISTINCT語句去重優(yōu)化機制詳解

    MySQL中DISTINCT語句去重優(yōu)化機制詳解

    本文深入解析了SQL中DISTINCT的優(yōu)化機制,介紹了內(nèi)SQL內(nèi)內(nèi)核如何自動將DISTINCT改寫為GROUPBY或LIMIT以提高查詢效率,通過具體案例展示了優(yōu)化器如何通過語義推理確定目標列是否被常量固定,從而實現(xiàn)高效去重
    2026-06-06
  • MySQL數(shù)據(jù)庫高級查詢和多表查詢

    MySQL數(shù)據(jù)庫高級查詢和多表查詢

    這篇文章主要介紹了MySQL數(shù)據(jù)庫高級查詢和多表查詢,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • mysql 修改用戶密碼圖文介紹

    mysql 修改用戶密碼圖文介紹

    有許多朋友經(jīng)常需要修改mysql修改用戶密碼,今天提供圖文并茂來解決此類問題,需要的朋友可以參考下
    2012-11-11
  • MySQL主從復制原理詳情

    MySQL主從復制原理詳情

    這篇文章主要介紹了MySQL主從復制原理詳情,MySQL?主從復制是指數(shù)據(jù)可以從一個MySQL數(shù)據(jù)庫服務器主節(jié)點復制到一個或多個從節(jié)點,文章圍繞主題展開詳細的內(nèi)容介紹。感興趣的小伙伴可以參考一下
    2022-06-06
  • MySQL如何使用DATE_FORMAT()對查詢結果按日、周、月分組統(tǒng)計

    MySQL如何使用DATE_FORMAT()對查詢結果按日、周、月分組統(tǒng)計

    這篇文章主要介紹了MySQL如何使用DATE_FORMAT()對查詢結果按日、周、月分組統(tǒng)計問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Mysql優(yōu)化調(diào)優(yōu)中兩個重要參數(shù)table_cache和key_buffer

    Mysql優(yōu)化調(diào)優(yōu)中兩個重要參數(shù)table_cache和key_buffer

    這篇文章主要介紹了Mysql優(yōu)化調(diào)優(yōu)中兩個重要參數(shù)table_cache和key_buffer,需要的朋友可以參考下
    2014-12-12
  • Ubuntu?18.04.4安裝mysql的過程詳解?親測可用

    Ubuntu?18.04.4安裝mysql的過程詳解?親測可用

    這篇文章主要介紹了Ubuntu?18.04.4安裝mysql-親測可用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • K8s中MySQL?數(shù)據(jù)持久化存儲的實現(xiàn)

    K8s中MySQL?數(shù)據(jù)持久化存儲的實現(xiàn)

    本文主要介紹了K8s中MySQL?數(shù)據(jù)持久化存儲的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01
  • MySQL如何實現(xiàn)兩張表取差集

    MySQL如何實現(xiàn)兩張表取差集

    這篇文章主要介紹了MySQL如何實現(xiàn)兩張表取差集問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • mysql修改記錄時update操作 字段=字段+字符串

    mysql修改記錄時update操作 字段=字段+字符串

    這篇文章主要介紹了mysql修改記錄時update操作 字段=字段+字符串,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02

最新評論

大洼县| 洞头县| 永和县| 蚌埠市| 水城县| 藁城市| 钟山县| 区。| 中西区| 壶关县| 平和县| 资中县| 平山县| 岑溪市| 桑日县| 德安县| 如东县| 安义县| 孝昌县| 舞阳县| 丰镇市| 颍上县| 乐陵市| 和平县| 庆元县| 修武县| 焦作市| 莆田市| 襄垣县| 通城县| 涿鹿县| 巫溪县| 卓资县| 洮南市| 洞头县| 汉沽区| 巩义市| 拉孜县| 霍邱县| 虹口区| 英山县|