ORA-00979 不是 GROUP BY 表达式

使用聚合函数中用group by来分组数据时特别说明了select 列表项中不存在的列可以出现在group by的列表项中,但反过来就不行了,在select列表项中出现的列必须全部出现在group by后面(聚合函数除外)

但一些朋友经常爱把select 列表项的中列忘了写在group by中。于是就出现了以上的错误ORA-00979 不是 GROUP BY 表达式。

比如:

 select deptno,job,sum(sal) from emp group by deptno;
 你要查询deptno和job,但是在group by中你只写了deptno,所以会报错

ORA-00979 不是 GROUP BY 表达式_第1张图片
正确的写法:

 select deptno,job,sum(sal) from emp group by deptno,job;

ORA-00979 不是 GROUP BY 表达式_第2张图片

你可能感兴趣的:(Oracle,Oracle)