为什么这被认为是不正确的GROUP BY用法?

SELECT Empno, Deptno,
SUM(Sal) "Total"
FROM Emp
GROUP BY Deptno;


我的笔记中给出的结果是:


Empno   Deptno Total
------- ------ --------
?       10     8750
?       20     10875
?       30     9400



出于以下原因:

SELECT中的所有列
列表必须出现在
GROUP BY或be
汇总!

但是我不太清楚这意味着什么...

最佳答案

由于同时选择了Empno和Deptno,因此需要按以下两个字段进行分组:

SELECT Empno, Deptno, SUM(Sal) "Total"
FROM Emp
GROUP BY Empno, Deptno;


或者如果不使用Empno,则选择Deptno:

SELECT Deptno, SUM(Sal) "Total"
FROM Emp
GROUP BY Deptno;

关于mysql - GROUP BY用法不正确,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10174338/

10-11 18:35