有2个表可用
EMP(empname PK, empno, sal, comm, deptno, hiredate, job, mgr)
DEPT(depnto, dname, loc)
查询
a)显示获得第一高薪
的ename和dname他们已经发表声明,必须仅使用子查询和Join
来完成所以我开始这样:
select A.ename, B.dname from emp A, dept B where A.deptno=B.deptno
我尝试了各种烫发和梳理,但我无法获得加入声明......
这不是一个家庭作业问题,我只是想解决教科书中的运动问题。提前谢谢
答案 0 :(得分:1)
要获得最高工资的记录,我Ordered by e.sal DESC
。这将按工资排序记录,最高位于最高位置(DESC
=降序,因此最高 - 最低)。
然后我使用TOP 1
只返回1条记录。
要获得dname
我 joined 与2 deptno
列相关的表格。
SELECT TOP 1 e.empname
,d.dname
FROM [EMP] e
JOIN [DEPT] d ON d.deptno=e.deptno
ORDER BY e.sal DESC
我希望这会有所帮助
答案 1 :(得分:0)
您可以尝试以下查询:
SELECT emp.ename,dept.dname FROM emp
JOIN dept ON emp.deptno=dept.deptno
WHERE emp.sal=(SELECT MAX(sal) FROM emp)