会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
木土aaa
博客园
首页
新随笔
联系
订阅
管理
SQL语句
Oracle
的EMP表,查询每个部门工资前三名的员工信息,如何写??
解答:(通用sql)
select deptno, ename, sal
from emp e1
where
(
select count(
1)
from emp e2
where e2.deptno=e1.deptno and e2.sal>=e1.sal
) <=
3
/*这里的数值表示你想取前几名*/
order by deptno, sal desc;
Oracle查询:(利用分区功能)
select * from
(select deptno,ename,sal,row_number() over (partition by deptno
order by sal desc) rn
from emp)
where rn<
3;
发表于
2018-07-11 10:09
木土aaa
阅读(
136
) 评论(
0
)
编辑
收藏
举报
刷新页面
返回顶部
公告