老题2
设有关系EMP(ENO,ENAME,SALARY,DNO),其中各属性的含义依次为职工号、姓名、工资和所在部门号,以及关系DEPT(DNO,DNAME,MANAGER),其中各属性含义依次为部门 号、部门名称、部门经理的职工号。
求每个部门工资的前两位,然后怎么写?
select top 2 salary from emp
order by salary desc
[解决办法]
--try
select top 2 a.salary from emp a
where a.ENO in(select ENO from emp where a.DNO=DNO order by salary desc )
[解决办法]
怎么能让部门也加进来 就是部门 两个工资 再下一个部门 两个工资
--------------------
先把两个表关联起来,再用mugua604(熟不了的木瓜) 的方法:
select b.DNAME,a.ENAME,a.salary from emp a join DEPT b on a.DNO=b.DNO
where a.ENO in(select top 2 ENO from emp where a.DNO=DNO order by salary desc )
order by b.DNAME,a.salary desc
我的异常网推荐解决方案:软件开发者薪资,http://www.myexception.cn/other/1391128.html