課程
/數據庫
/MySQL
/與MySQL的零距離接觸
第一個?我跟著視頻一模一樣打印報錯?永遠報錯?好像select只能選擇一個?其他表全選都沒事,我一更改選擇順序馬上就好了。為什么
因為視頻錄制老師不夠嚴謹?沒有考慮到這些小問題
2020-04-07
源自:與MySQL的零距離接觸 5-14
正在回答
永久的解決辦法:
1.原因:sql_mode的值中含有ONLY_FULL_GROUP_BY
2.解決:修改mysql的配置文件my.ini,或在my.ini中添加如下行(將ONLY_FULL_GROUP_BY刪掉即可)
保存,重啟即可。
select列要包含在group by中,或者聚合函數中。前者需要該配置,后者事例如下:
DELETE?t1?FROM?tdb_goods?t1?INNER?JOIN?( ????SELECT?MIN(goods_id)?AS?goods_id,?goods_name?FROM?tdb_goods?GROUP?BY?goods_name?HAVING?COUNT(goods_name)?>=?2)?t2?ON?t1.goods_name?=?t2.goods_name? WHERE?t1.goods_id?>?t2.goods_id;
這個問題要改數據庫配置的,group by的條件必須和查詢結果順序一致,也就是說你后邊只可以寫,group by id 或者 group by id,name ,否則的話會報語法錯誤。
你去網上搜一下err1055,應該有臨時解決方法,也有永久解決方法
舉報
本課程涵蓋全部MySQL數據庫的基礎,學習MySQL數據庫的基礎知識
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2020-06-24
永久的解決辦法:
1.原因:sql_mode的值中含有ONLY_FULL_GROUP_BY
2.解決:修改mysql的配置文件my.ini,或在my.ini中添加如下行(將ONLY_FULL_GROUP_BY刪掉即可)
保存,重啟即可。
2020-04-13
select列要包含在group by中,或者聚合函數中。前者需要該配置,后者事例如下:
2020-04-07
這個問題要改數據庫配置的,group by的條件必須和查詢結果順序一致,也就是說你后邊只可以寫,group by id 或者 group by id,name ,否則的話會報語法錯誤。
你去網上搜一下err1055,應該有臨時解決方法,也有永久解決方法