使用GROUP BY 发生错误 SELECT list is not in GROUP BY clause .......... 解决
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 clause; this is incompatible with sql_mode=only_full_group_by
在使用GROUP BY对Mysql的数据表进行查询时如果出现以下错误
1.查询mysql 相关mode
select @@global.sql_mode;
可以看到模式中包含了ONLY_FULL_GROUP_BY
,只要没有这个配置即可。
我的Mysql版本是5.7.23
,默认是带了ONLY_FULL_GROUP_BY
模式。
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
解决方法一: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';
解决方法2:
打开mysql配置文件:my.cnf或者my.ini,直接选择打开mysql配置文件,然后在[mysqld]下面添加 sql_mode=ONLY_FULL_GROUP_BY,NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES
重启mysql即可
相关文章
- java list去重_JAVA基础-List去重的6种方式[通俗易懂]
- 计算机里libcurl.dll,Update.exe系统错误 由于找不到libcurl.dll,无法继续执行代码。重新安装程序可能会解决此问题。 – Microsoft Community…
- List<类型1>转成List<类型2>的LIst类型转换工具类
- hive相关错误
- vue的 v-for指令报“custom elements in iteration require v-bind:key“错误
- 创建list ALV tree[RS_TREE_LIST_DISPLAY]详解编程语言
- 解决MySQL 1064错误的方法(mysql的1064错误)
- Redis 轻松存储列表数据:使用 Redis 保存 List 的方法(redis保存list)
- 性能优化提升Redis List性能的简单方法(redis的list)
- SQLServer配置防止除零错误(sqlserver 除零)
- MySQL中出现No key错误解决方法(mysql中nokey)
- 解决Oracle数据库128错误(128错误oracle)
- 使用Redis轻松获取List元素(redis 返回list)
- Redis实现高效的List读取(redis读list)
- Redis自带数据结构List(redis自带list)