본문 바로가기

DB/Programmers SQL Kit

[My_SQL] 특정 세대의 대장균 찾기

문제

 

무식하게 데이터를 뽑아냈다...

PARENT_ID가 NULL 인 데이터의 ID를 1세대 A라하고 PARENT_ID가 A인 값들을 2세대 B 

PARENT_ID가 B인 값들을 3세대 C로 판단하여 출력했다.

코드

WITH GENERATION AS (
SELECT ID
FROM ECOLI_DATA 
WHERE PARENT_ID IN (SELECT ID
                    FROM ECOLI_DATA 
                    WHERE PARENT_ID IN (SELECT ID
                                        FROM ECOLI_DATA
                                        WHERE PARENT_ID IS NULL)
                   )
)
             
SELECT ID
FROM GENERATION
ORDER BY 1 ASC;