각 세대별 자식이 없는 개체의 수(COUNT)와 세대(GENERATION)를 출력하는 SQL문을 작성해주세요. 이때 결과는 세대에 대해 오름차순 정렬해주세요. 단, 모든 세대에는 자식이 없는 개체가 적어도 1개체는 존재합니다.
WITH RECURSIVE TMP_TABLE AS ( SELECT ID, PARENT_ID, 1 AS N FROM ECOLI_DATA WHERE PARENT_ID IS NULL UNION ALL SELECT A.ID, A.PARENT_ID, B.N + 1 AS N FROM ECOLI_DATA A JOIN TMP_TABLE B ON A.PARENT_ID = B.ID ) SELECT COUNT(*) AS COUNT, A.N AS GENERATION FROM TMP_TABLE A LEFT JOIN TMP_TABLE B ON A.ID = B.PARENT_ID WHERE B.ID IS NULL GROUP BY A.N ;
https://school.programmers.co.kr/learn/courses/30/lessons/301651