<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      MySQL5.7 中使用 group by 報錯 this is incompatible with sql_mode=only_full_group_by

      1. 報錯場景


      在sql語句中使用 group by 報錯

      SELECT  FROM `user` GROUP BY `gender`;
      
      SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'liang.lcy_user.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by"
      

      2. 問題分析


      一、原理層面

      這個錯誤發(fā)生在mysql 5.7 版本及以上版本,5.7版本默認(rèn)的sql_mode配置中包含 ONLY_FULL_GROUP_BY,這個配置嚴(yán)格執(zhí)行了"SQL92標(biāo)準(zhǔn)"

      很多人從5.6升級到5.7時,為了語法兼容,大部分都會選擇調(diào)整sql_mode,使其保持跟5.6一致,為了盡量兼容程序

      二、sql層面: sql執(zhí)行時,出現(xiàn)該原因:

      簡單來說就是:輸出的結(jié)果是叫 target list,就是select后面跟著的字段,還有一個地方 group by column,就是group by后面跟著的字段。

      由于開啟了ONLY_FULL_GROUP_BY的設(shè)置,所以如果一個字段沒有在target listgroup by 字段中同時出現(xiàn),或者是聚合函數(shù)的值的話,那么這條sql查詢是被mysql認(rèn)為非法的,會報錯誤。

      舉例

      // 報錯
      SELECT  FROM `user` GROUP BY `gender`; 
      
      // 不報錯,因為gender字段在target list和group by字段中同時出現(xiàn)了
      SELECT gender FROM `user` GROUP BY `gender`;
      

      3. 查看sql模式


      查看 sql_mode 的語句

      show global variables like 'sql_mode';
      

      通過命令行可以看到 sql_mode 的值有一堆,將最前面的 ONLY_FULL_GROUP_BY 去掉即可解決這個問題

      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
      

      4. 解決方案(去除 ONLY_FULL_GROUP_BY


      方案一: 臨時性解決 (執(zhí)行SQL語句)

      此方式重啟MySQl服務(wù)后失效

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

      方案二: 永久性解決(修改配置文件 my.cnf)

      [mysqld] 下面添加以下內(nèi)容

      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 服務(wù)

      mysql.server restart
      
      posted @ 2021-09-25 23:51  辰風(fēng)沐陽  閱讀(390)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 免费看国产精品3a黄的视频| 日本熟妇XXXX潮喷视频| 草草浮力地址线路①屁屁影院 | 国产乱妇乱子视频在播放| 中文亚洲成A人片在线观看| 株洲市| 国产一区二区三区的视频 | 亚洲熟妇在线视频观看| 东京热一精品无码av| 好吊视频专区一区二区三区| 国产精品青草久久久久福利99| 欧洲无码一区二区三区在线观看| 国产视频精品一区 日本| 国产色视频网站免费| 国产肥妇一区二区熟女精品| 在线a级毛片无码免费真人| 精品无码一区二区三区在线| 久久老熟女一区二区蜜臀| 亚洲色欲色欲WWW在线丝| 国产老妇伦国产熟女老妇高清| 亚洲一区二区中文av| 尤物视频色版在线观看| 亚洲一区二区三区啪啪| 国产欧洲欧洲久美女久久| 他掀开裙子把舌头伸进去添视频| 日本丶国产丶欧美色综合| 无套内谢少妇一二三四| 浓毛老太交欧美老妇热爱乱| 国产精品福利自产拍久久| 亚洲欧美日韩综合在线丁香| 久热综合在线亚洲精品| av激情亚洲男人的天堂| 国产精品偷伦费观看一次| 天天做天天爱夜夜夜爽毛片| 欧洲中文字幕国产精品| 久久久久无码精品亚洲日韩| 中文熟妇人妻av在线| 人妻体体内射精一区二区| 丝袜老师办公室里做好紧好爽| 亚洲精品中文字幕在线观| 99国产精品99久久久久久|