코딩 테스트/SQL

[프로그래머스 - LEVEL 3] 대장균들의 자식의 수 구하기

macbook2 2026. 2. 12. 18:02

https://school.programmers.co.kr/learn/courses/30/lessons/299305

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr


문제

대장균 개체의 ID(ID)와 자식의 수(CHILD_COUNT)를 출력하는 SQL 문을 작성해주세요. 자식이 없다면 자식의 수는 0으로 출력해주세요. 이때 결과는 개체의 ID 에 대해 오름차순 정렬해주세요.

 

풀이

-- 코드를 작성해주세요
SELECT a1.id, COUNT(a2.parent_id) AS CHILD_COUNT
FROM ecoli_data a1
LEFT JOIN ecoli_data a2
    ON a1.id = a2.parent_id
GROUP BY a1.id
ORDER BY a1.id;

 

한 테이블 안에 종속되는 컬럼 쌍이 존재할 때

마치 다른 테이블의 컬럼과 같이 사용해야 한다.

따라서 이때 셀프조인을 사용 하면 된다.