用sql语句查询各个学科分数最高的学生,如图:

bantjmh 2014-09-19 10:28:42

如上表,查询结果应为:

求SQL!
...全文
3105 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
美到心痛 2014-09-21
  • 打赏
  • 举报
回复
如果是实际工作,2楼的对
bw555 2014-09-19
  • 打赏
  • 举报
回复
此种写法并列最高的都能取出来
select * from T T1
where not exists(select 1 from T WHERE 学科=T1.学科 AND 分数>T1.分数)
bw555 2014-09-19
  • 打赏
  • 举报
回复
如果出现并列最高如何处理,这种写法速度快,但是如果出现并列的情况是任选一条
select 学科,
max(学生姓名)keep(dense_rank last order by 分数,rowid) 学生姓名,
MAX(分数)
from T
GROUP BY 学科

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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