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

guo1054522381 2013-02-18 10:44:53
select max(sal) from emp group by deptno 语句并没有报错,但是查询列表中并没有deptno字段啊?
...全文
1777 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
通俗的说 在group by语句中 select后的字段和where后的字段可以一对多,但是不能多对一
forgetsam 2013-05-30
  • 打赏
  • 举报
回复
你正好弄反了,聚合查询,列表中的字段必须满足以下两个条件之一: 1 在group 元素中 2 加了聚合函数 道理很简单,逻辑上,一组只能出一行。
Wentasy 2013-05-29
  • 打赏
  • 举报
回复
小海葵1 2013-02-19
  • 打赏
  • 举报
回复
可以不写,但是写在SELECT中必须要在group by 中出现。
Phoenix_99 2013-02-19
  • 打赏
  • 举报
回复
分组查询,必须有聚合或者该字段或聚合和该字段
陪公主读书 2013-02-19
  • 打赏
  • 举报
回复
没明白你要问的是什么意思
linwaterbin 2013-02-18
  • 打赏
  • 举报
回复
select max(sal),deptno from emp group by deptno

1,617

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧