这个问题,我只能回答第一问:[code=sql]SELECT t1.empno,t1.ename,t2.empno,t2.ename
FROM emp t1,emp t2
WHERE t1.empno = t2.mgr and t1.empno=7839;[/code]其中t1代表上司表,t2代表员工表。 代码的含义是,查询出编号为7839的人的所有下属。
第二问:
其实,没必要将所有上司都查出来,只要查询出某个员工的顶头上司即可:[code=sql]SELECT t1.empno,t1.ename,t2.empno,t2.ename
FROM emp t1,emp t2
WHERE t1.empno = t2.mgr and t2.empno=7369;[/code]其中t1代表上司表,t2代表员工表。 代码的含义是,查询出编号为7369的人的顶头上司。
查询的结果为:[code=sql]7902 FORD 7369 SMITH [/code]若用户想继续看FORD的上司,那么再执行一遍上面的代码即可,无非是把7369换成了7902而已。 |