【发布时间】:2017-10-06 08:55:29
【问题描述】:
我有一个 AJAX GET 请求,它应该向我返回类别列表,但我收到了一个 SQL 错误 SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column
我的请求 URl 是下一个:http://my-domain.com/admin/api/categories?flat=true&sortBy=depth&sortOrder=asc&fields=name,id
解决此问题的最佳方法是什么?我应该更改 mysql .cnf 文件还是可以在代码中修复?
【问题讨论】:
-
一般 GROUP BY 规则说:“如果指定了 GROUP BY 子句,则 SELECT 列表中的每个列引用必须标识一个分组列或作为集合函数的参数。”
-
是的,但是 sql-query 是在 vendor 中生成的,所以我不能更改 vendor 代码。这就是为什么我要问苏禄这个问题的最佳解决方案是什么
-
MySQL 有一个兼容模式来允许那些无效的 GROUP BY。也许你可以设置它?
标签: php mysql sql symfony sulu