【发布时间】:2019-05-01 11:59:42
【问题描述】:
我已将流明版本从 5.6 更新到 5.7。在这个Illumination/database 包v5.7.15 中默认启用MySQL 模式only_full_group_by。这会导致我的一些 Group By 查询失败。大多数人建议在流明中禁用严格模式。我认为禁用严格模式不是正确的解决方案。 MySQL 中是否有任何替代查询可用?或者我需要在 PHP 中构建一个逻辑?我正在使用 MySQL 5.6
我正在使用类似的查询
SELECT MONTHNAME(date_created) MONTH, YEAR(date_created) YEAR
FROM test_table
GROUP BY MONTH, YEAR
我没有使用聚合函数。 data_created 列具有日期时间数据类型
【问题讨论】:
-
查看查询并更改它们。如果没有 only_full_group_by,您可能会得到不正确或意外的结果。通常的解决方案是将 select 子句中的所有列添加到 group by 子句中。
-
@SalmanA :我正在使用 SELECT MONTHNAME(date_created) MONTH, YEAR(date_created) YEAR FROM test_table GROUP BY MONTH, YEAR 之类的查询。我没有使用聚合函数。 data_created 列具有日期时间数据类型。