Guo Qiang

sales 查询页面出现问题

发布时间2020-10-15 15:00:28FAQ
image

我在把 sales 移到另一台 CentOS 服务器中后,php 生成的页面出现了问题,“合计”一栏并没有计算出结果,我在排查 php 代码时发现计算合计的那行 mysql 代码上运行时会发生错误:

1140 - In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'sales.sales.name'; this is incompatible with sql_mode=only_full_group_by。

经查,mysql 的 sql_mode 是 only_full_group_by 的时候,若不使用 group by 并且 select 后面出现聚集函数的话,所有被 select 的都应该是聚集函数,否则就会报错,解决这个问题方法如下:


# 编辑 /etc/my.cnf,加入如下参数,并重启 mysql 服务
sql_mode = "STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER"


Copyright © 2019~2020 Guo Qiang