/* erroneous query */
select dept name, ID, avg (salary)
from instructor
group by dept name;
我知道每一个非聚合函数如果出现在select中就一定出现在group by中。然而,此查询仍在 mySQL 中运行。
应该是:
/* erroneous query */
select dept name, ID, avg (salary)
from instructor
group by dept name, **ID**;
因为我运行了两个查询并且它们给出了完全相同的答案!
最佳答案
MySQL 将允许您在分组依据中不包含非聚合列,这对我来说是个糟糕的主意。这可能会导致一些非常不可预测的结果。这是文档的链接: Clicky!
关于mysql - 下面的SQL查询为什么会出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20847174/