表1:部門關系表
father_code child_code
2 5
2 6
3 7
3 8
4 9
4 10
表2:部門詳情表
FATHER_CODE NAME
2 部門2
3 部門3
4 部門4
5 科1
6 科2
7 科1
8 科2
9 科1
10 科2
表3:
編號 部門編號 科室編號
2 部門2
5 部門2 科1
6 部門2 科2
3 部門3
7 部門3 科1
8 部門3 科2
10 部門4 科2
4 部門4
9 部門4 科1
------------------------------------------------
根據表1和表2,得出表3的結果(所有欄位都是varchar2型別)
參考答案:
SELECT
C.編號
,C.部門編號
,C.科室編號
FROM(
SELECT
B.FATHER_CODE 編號
,CASE WHEN B.FATHER_CODE IN (SELECT FATHER_CODE FROM DEPT_A)
THEN B.NAME
ELSE (SELECT
C.NAME
FROM DEPT_B C WHERE C.FATHER_CODE=
(SELECT A.FATHER_CODE FROM DEPT_A A WHERE A.CHILD_CODE=B.FATHER_CODE))
END 部門編號
,CASE WHEN B.FATHER_CODE IN (SELECT FATHER_CODE FROM DEPT_A)
THEN NULL
ELSE B.NAME
END 科室編號
FROM DEPT_B B
)C
ORDER BY C.部門編號,C.編號;
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/283424.html
標籤:開發