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

迈不过友情╰ 2022-12-29 04:56 292阅读 0赞

运行报错:

Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘test.dept_emp.emp_no’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

解决方法:

在Navicat下执行下面语句,重新打开即可成功。

  1. SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''))

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0NpZWxfWQ_size_16_color_FFFFFF_t_70

原因

MySQL5.7.5及以上默认启用了ONLY_FULL_GROUP_BY
SQL模式,也就是依赖检测功能。MYSQL将拒绝选择列表,这时HAVING条件或ORDER BY查询出的数据会被认为是未命名的非集合列。

发表评论

表情:
评论列表 (有 0 条评论,292人围观)

还没有评论,来说两句吧...

相关阅读