分组查询中分组的字段为什么一定要出现在查询的列表里面

时间:2022-03-12 06:19:06
select max(sal) from emp group by deptno 语句并没有报错,但是查询列表中并没有deptno字段啊?

7 个解决方案

#1


select max(sal), deptno from emp group by deptno

#2


没明白你要问的是什么意思

#3


分组查询,必须有聚合或者该字段或聚合和该字段

#4


 可以不写,但是写在SELECT中必须要在group by 中出现。

#5


分组查询中分组的字段为什么一定要出现在查询的列表里面

#6


你正好弄反了,聚合查询,列表中的字段必须满足以下两个条件之一:
1 在group 元素中 2 加了聚合函数

道理很简单,逻辑上,一组只能出一行。

#7


通俗的说 

在group by语句中 select后的字段和where后的字段可以一对多,但是不能多对一

#1


select max(sal), deptno from emp group by deptno

#2


没明白你要问的是什么意思

#3


分组查询,必须有聚合或者该字段或聚合和该字段

#4


 可以不写,但是写在SELECT中必须要在group by 中出现。

#5


分组查询中分组的字段为什么一定要出现在查询的列表里面

#6


你正好弄反了,聚合查询,列表中的字段必须满足以下两个条件之一:
1 在group 元素中 2 加了聚合函数

道理很简单,逻辑上,一组只能出一行。

#7


通俗的说 

在group by语句中 select后的字段和where后的字段可以一对多,但是不能多对一