SELECT
*
FROM table d
WHERE d.tree_id In ( with cte(tid)
AS
(
SELECT tid
FROM edm_tree
WHERE tid='T2'
UNION ALL
select a.tid
FROM edm_tree a, cte b
WHERE a.pid=b.tid
)
SELECT tid FROM CTE
)
이런형태로는 안되네요.. 흠
by 마농
[2018.03.13 14:39:35]
WITH edm_tree_cte AS
(
SELECT tid
FROM edm_tree
WHERE tid = 'T2'
UNION ALL
SELECT c.tid
FROM edm_tree_cte p
INNER JOIN edm_tree c
ON p.tid = c.pid
)
SELECT *
FROM table d
WHERE d.tree_id IN (SELECT tid FROM edm_tree_cte)
;
by 실베
[2018.03.13 14:55:22]
감사합니다.
오라클만하다가 sql 만지니까.. 계층같은건좀 어렵네요 ㅠㅠ
댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.