MySQL 错误:'isn't in GROUP BY'
MySQL 在检索时经常会生成“isn't in GROUP BY”错误使用特定查询从表中获取数据。了解原因以及解决方法至关重要。
背景:
MySQL 要求 SELECT 子句中包含的所有列(除了 COUNT 之类的聚合函数之外)还必须包含在 GROUP BY 子句中。这可确保结果基于指定列中具有不同值的数据组。
示例错误:
在提供的示例中,使用时会出现错误查询:
SELECT `name`, `type`, `language`, `code` FROM `users` WHERE `verified` = '1' GROUP BY `name` ORDER BY `count` DESC LIMIT 0, 25
MySQL 检测到 GROUP BY 中不存在列计数
解决方案:
要解决此错误,必须将 SELECT 子句中的所有列包含在 GROUP BY 子句中。在这种情况下,修改后的查询将是:
SELECT `name`, `type`, `language`, `code` FROM `users` WHERE `verified` = '1' GROUP BY `name`, `type`, `language`, `code` ORDER BY `count` DESC LIMIT 0, 25
附加说明:
以上是为什么 MySQL 会抛出'不在 GROUP BY 中”错误,如何修复它?的详细内容。更多信息请关注PHP中文网其他相关文章!