目录

裴先生
裴先生
发布于 2022-04-30 / 0 阅读
0
0

记录MySQL报错:[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains no...

原创
MySQL报错:[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by 在SQL_mode中开启了 only_full_group_by 模式。 only_full_group_by的作用:使用这个就是使用和oracle一样的group 规则, select的列都要在group中,或者本身是聚合列(SUM,AVG,MAX,MIN) 才行 修改SQL语句,在group by子句中将需要select的列都写上 将SQL_mode中的only_full_group_by 删除。
  1. 查看SQL_mode
    select @@global.sql_mode 默认的值为ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
  2. 修改SQL_mode
    set @@global.sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
修改ini配置文件。
  1. 在根目录下找到my.ini文件。在[mysqld]下添加以下配置信息:
    sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
  2. 保存ini文件。
  3. 重启MySQL服务。

原创

版权声明:本博客原创文章,由 裴先生 2022年04月30日 发表。
转载说明:除特殊说明外本站文章皆由 CC BY-NC-SA 4.0 协议发布,转载须注明出处。


评论