您的位置:首頁技術文章
文章詳情頁

mysql 報錯,不太懂

瀏覽:86日期:2022-06-15 17:35:55

問題描述

問題解答

回答1:

正常select后面的字段只能是group by中的字段或者是聚合函數,例如:

select a,max(b) from t group by a;

但你會發現,有時別人的mysql是這樣寫的,

select a,b,max(c) from t group by a;

為什么別人不報錯呢?注意看下報錯提示的最后一句sql_mode=only_full_group_bysql_mode是用來檢查SQL語句的合法性,當配置為only_full_group_by時,select字段要么是來自于聚集函數的結果,要么是來自于group by后中的字段值。因此,如果你想保證原來sql正常執行,可以去修改下my.cnf的配置,把sql_mode=only_full_group_by注釋掉,在前面加#號

回答2:

你 groupby ymf.u.uid 但是沒有放進select的字段里吧?

回答3:

將sql一起貼出來

回答4:

你在使用group by的時候,所要select的字段必須在group by中,聚合查詢除外。

回答5:

謝邀,方便的話貼一下你的代碼,看錯誤的話應該是 你查詢的字段 不在 GROUP BY 里面,詳細的話 還是要看你的 sql語句。

相關文章:
国产综合久久一区二区三区