0
点赞
收藏
分享

微信扫一扫

Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column

343d85639154 2022-03-30 阅读 60

问题:Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘wsq.m.chat_room_id’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
分析:mysql数据库版本比你引入的jar包版本高,在MySQL5.7.5后,默认开启了ONLY_FULL_GROUP_BY,所以导致了之前的一些SQL无法正常执行,其实,是我们的SQL不规范造成的,因为group by 之后,返回的一些数据是不确定的,所以才会出现这个错误。
解决方案

  1. 修改SQL语句
  2. 提高mysql依赖版本
  3. 安装对应mysql依赖版本号的mysql版本
  4. 修改 my.ini 配置文件,强制指定不需要ONLY_FULL_GROUP_BY属性
    在 [mysqld] 下面添加代码:
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

重启mysql。

举报

相关推荐

0 条评论