mysql group by分组查询报错 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'tencent_db.sz_qq.id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
ONLY_FULL_GROUP_BY:
对于GROUP BY操作,如果在SELECT中出现的单独的列,没有在GROUP BY子句中出现,那么这个SQL是不合法的
于是,把这个策略删除!!!
找到mysql配置文件,Windows下是my.ini,Linux下是my.cnf或mysql.cnf。
select @@global.sql_mode
set @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
cnf配置文件默认没有的话,直接在里面加上
sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
重启MySQL
service mysqlId restart