1. 程式人生 > >mysql查詢資料報錯

mysql查詢資料報錯

1、ERROR 1055報錯:
在這裡插入圖片描述

當使用sql語句查詢資料庫時,出現1055報錯時,
官方文件解釋說5.7版本的mysql不允許groud_by中未引用select後出現的欄位:
在這裡插入圖片描述

因為5.7.5預設的sql模式配置是ONLY_FULL_GROUP_BY, 這個配置啟用的是 “嚴格ANSIsql 規則”,嚴格ANSI sql 規則要求在group_by的時候,沒有聚合的列,在group by的時候,必須全部包含在group by 的欄位中。
沒有聚合的列,指的是沒有使用 max, min, count, sum…這些函式的列,直接查詢出欄位的列。

解決辦法
window系統:
在mysql安裝根目錄下,找到my.ini檔案,在如下位置輸入以下語句:

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就行。
window系統中mysql重啟方法參考該連結:
https://blog.csdn.net/marslover521/article/details/80938686

linux系統:
在/etc/my.cnf檔案中相同的位置輸入剛剛的命令即可。然後重啟mysql。

參考連結:

https://blog.csdn.net/hhczy1003/article/details/77506191?locationNum=9&fps=1


https://blog.csdn.net/li1325169021/article/details/78344083