今天在學習sql的時候,遇到一個很有意思的問題---單表中字段存在關聯,圖中字段empno表示員工編號,ename表示員工姓名,JOB表示職位,MGR表示上級領導員工編號,HIREDATE表示入職日期,SAL表示薪水,COMM表示提成,DEPTNO表示部門表的編號,此處作爲外鍵。
題目要求是列出所有員工的姓名及其直接上級的姓名,此時我們需要將這張單表分成兩組表,員工表和直接上級表。
直接上級表:SELECT empno,ename from emp;
SELECT emp.ename,temp.ename FROM emp,(SELECT empno,ename from emp) AS temp WHERE temp.empno=emp.MGR;
效果如下:
第一次遇見單表自我關聯的例子,覺得很有意思~