完整報錯如下:Expression #4 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'sa.type' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
原因:在MySQL5.7.5後,默認開啓了ONLY_FULL_GROUP_BY,所以導致了之前的一些SQL無法正常執行,其實,是我們的SQL不規範造成的,因爲group by 之後,返回的一些數據是不確定的,所以纔會出現這個錯誤。
解決辦法:
修改下sql_mode即可:
select version(), @@sql_mode;
修改:
SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));