题目:查询每个雇员的姓名、工资、部门名称,工资在公司的等级(salgrade),及其领导的姓名所在公司的等级
SQL> SELECT e.ename,e.sal,d.dname,s.grade,m.ename,m.sal,ms.grade FROM emp e,dept d,salgrade s,emp m,salgrade ms WHERE e.deptno = d.deptno
AND e.sal BETWEEN s.losal AND s.hisal
AND e.mgr = m.empno (+)
AND m.sal BETWEEN ms.losal AND ms.hisal;
我想加一个左连接,把KING的资料也显示出来,但是被没显示,求教
------解决思路----------------------
将emp,sagrade的集合作为领导表再左连接可以得到你要的结果
你这个我也想不明白为什么,期待大神来解释
------解决思路----------------------
SELECT e.ename, e.sal, d.dname, s.grade, m.ename, m.sal, ms.grade
FROM emp e, dept d, salgrade s, emp m, salgrade ms
WHERE e.deptno = d.deptno
AND e.sal BETWEEN s.losal AND s.hisal
AND e.mgr = m.empno ( + )
--AND m.sal BETWEEN ms.losal AND ms.hisal m.sal 不存在记录 也需要与ms表外关联呀
AND m.sal BETWEEN ms.losal(+) AND ms.hisal(+)
;