1055(42000): SELECT list is not in GROUP BY clause and contains nonaggregated column 原因与解决方案 该报错主要是因为sql_mode参数被修改导致: 原因一:用户修改sql_mode参数导致GROUP BY的语法不合规 原因:用户修改了sql_mode参数,加上了ONLY_FULL_GROUP_BY条件,导致GROUP BY的语法不符合...
但当mysql的版本高于5.7时,在执行group by时,select的字段不属于group by的字段的话,就会报错。报错信息如下: 1055- Expression #1of SELECT list is notinGROUP BY clause and contains nonaggregated column ‘数据库名.表名.字段名’whichis not functionally dependent on columnsinGROUP BY clause; this is in...
即不允许 select target list 中出现语义不明确的列. 对于用到 GROUP BY 的 select 语句, 查出来的列必须是 group by 后面声明的列, 或者是聚合函数里面的列有这样一个数据库的表. 因此,这种模式的特点是: 1:只要有聚合函数 sum(),count(),max(),avg() 等函数就需要用到 group by , 否则就会报上面的...
1、问题复现: 今天在进行数据迁移时,使用Navicat连接数据库进行连接时,由于 SQL语句中使用了 group by分组函数,结果报了如下错误: 2、产生原因 产生原因说是,在MySQL数据库版本为5.7以上的版本,默认开启了 ONLY_FULL_GROUP_BY SQL模式,在此模式下,对于group by操作,如果在select语句中的查询列没有在group by中出...
Expression #1of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘grades.order_id’ which is not functionally dependent on columns in GROUP BY clause;this is incompatible with sql_mode=only_full_group_by 问题描述
Expression #2 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘sss.month_id’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by 1. 2. ...
Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'test.w.id' which is not functionally dependent on columns in GROUP BY ...
解决MYSQL查询报错 Expression #4 of SELECT list is not in GROUP BY clause and contains nonaggregated column 原因:在MySQL5.7.5后,默认开启了ONLY_FULL_GROUP_BY,所以导致了之前的一些SQL无法正常执行,其实,是我们的SQL不规范造成的,因为group by 之后,返回的一些数据是不确定的,所以才会出现这个错误。
简介:MySQL5.7.5后only_full_group_by成为sql_mode的默认选项之一,这可能导致一些sql语句失效。 一、原因 MySQL5.7.5后only_full_group_by成为sql_mode的默认选项之一,这可能导致一些sql语句失效。 二、解决办法 1、命令行打开mysql.cnf,默认路径为/etc/mysql/conf.d/mysql.cnf,如果找不到可以使用whereis进行查...
去掉ONLY_FULL_GROUP_BY,重新设置值。 set @@global.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 配置文件设置 1sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_...