티스토리 뷰

DB

재귀 (추후삭제)

wldnjd2 2023. 10. 10. 13:46
WITH EmployeeHierarchy (employee_id, manager_id, employee_name, level) AS
(
    SELECT employee_id, manager_id, employee_name, 0 as level
    FROM employees
    WHERE manager_id IS NULL

    UNION ALL

    SELECT e.employee_id, e.manager_id, e.employee_name, eh.level + 1
    FROM employees e
    INNER JOIN EmployeeHierarchy eh
    ON e.manager_id = eh.employee_id
)
SELECT employee_id, manager_id, employee_name, level
FROM EmployeeHierarchy;

 

 

위의 예시에서 

(employee_id, manager_id, employee_name, level)
값 은 첫번째 SELECT 값을 저장하는것.

'DB' 카테고리의 다른 글

insert후 시퀀스 값 리턴  (0) 2023.08.22
DB데이터를 바꿔서 처리하기  (0) 2023.01.17
형변환하기 ::  (0) 2023.01.10
[Postgresql] 형변환  (0) 2022.09.27
boolean의 jdbcType  (0) 2022.09.27
댓글