대장균들의 자식의 수 구하기 (LEVEL3)
대장균 개체의 ID(ID)와 자식의 수(CHILD_COUNT)를 출력 (자식이 없다면 자식의 수는 0)
정렬 개체의 ID 오름차순
정답 코드
SELECT A.ID, (CASE
WHEN CHILD_COUNT IS NULL THEN 0
ELSE CHILD_COUNT
END) AS CHILD_COUNT
FROM ECOLI_DATA A LEFT JOIN (SELECT P.ID, count(*) as CHILD_COUNT
FROM ECOLI_DATA P JOIN ECOLI_DATA C
ON P.ID = C.PARENT_ID
GROUP BY P.ID) B ON A.ID = B.ID
ORDER BY A.ID
MEMO
- CASE-WHEN 또 다른 방법
COALESCE(B.COUNT, 0)
- 처음에는 JOIN 한번으로 끝내볼까했는데 자식수 0인 경우 찾는게 안되서 JOIN 두번 사용
'문제 풀이 > 프로그래머스' 카테고리의 다른 글
[MYSQL 39] 조건에 부합하는 중고거래 댓글 조회하기 (0) | 2024.10.18 |
---|---|
[MYSQL 37] 분기별 분화된 대장균의 개체 수 구하기 (0) | 2024.10.14 |
[MYSQL 35] 특정 물고기를 잡은 총 수 구하기 (0) | 2024.10.12 |
[MYSQL 34] 부모의 형질을 모두 가지는 대장균 찾기 (0) | 2024.10.10 |
[MYSQL 33] 조건에 맞는 개발자 찾기 (4) | 2024.10.09 |