mysql8.0版本使用groupby去重出现问题解决
问题:
select * from table GROUP BY column;
mysql 执行报错1055
问题分析:
1、查看@@sql_mode
select @@sql_mode;
可见ONLY_FULL_GROUP_BY:
对于GROUP BY聚合操作,若select中的列没有在group by中出现,那么这句SQL是不合法的。
问题解决:
修改my.ini (务必在[mysqld]下,否则不生效)-> 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 即可(mysql80为安装mysql时候自定义名字):
net stop mysql80
net start mysql80