千家信息网

问题:only_full_group_by

发表于:2024-10-17 作者:千家信息网编辑
千家信息网最后更新 2024年10月17日,错误原因:mysql 5.7 版本及以上版本默认的sql配置: sql_mode中包含 "ONLY_FULL_GROUP_BY" 这个配置严格执行了 "SQL92标准"。 所以数据库的升级有可能会导
千家信息网最后更新 2024年10月17日问题:only_full_group_by
错误原因:mysql 5.7 版本及以上版本默认的sql配置: sql_mode中包含 "ONLY_FULL_GROUP_BY" 这个配置严格执行了 "SQL92标准"。  所以数据库的升级有可能会导致本地的sql执行报错。解决方案: 1.优化sql,使其符合"SQL92标准"  2.去掉  "ONLY_FULL_GROUP_BY" 这个配置       
1.查看sql_model语句
     select @@GLOBAL.sql_mode;
暂时性去掉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
永久性去掉ONLY_FULL_GROUP_BY
    修改mysql配置文件,my.cnf位于etc文件夹下,vim下添加sql_mode如下:    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服务。
0