📕 문제
https://school.programmers.co.kr/learn/courses/30/lessons/299305
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
📄 내가 생각한 풀이
1. SELF JOIN
부모-자식의 관계를 알기위해
ON 조건: 부모-자식
ECOLI_DATA.ID = ECOLI_DATA.PARENT_ID
부모쪽 테이블 : ID, 그룹화, 정렬(ID 가 부모쪽이기에)
자식쪽 테이블 : 자식의 수 카운트
#셀프조인 예시
SELECT A.column1, B.column1
FROM table_name A
JOIN table_name B
ON A.some_column = B.some_column;
주의) 별칭 사용 헷갈리지 않도록 구분하며 주의하기
2. COALESCE(A, 0) -> A가 NULL이면 0으로 대체
자식이 없다면 자식의 수는 0으로 출력해주세요
-> coalesce함수 사용
여러 인수를 받아, 첫 번째로 NULL이 아닌 값을 반환.
💻 내 코드
//
💻 답안
SELECT P.ID, COALESCE(COUNT(C.PARENT_ID),0) AS CHILD_COUNT
FROM ECOLI_DATA P
LEFT JOIN ECOLI_DATA C
ON P.ID = C.PARENT_ID
GROUP BY P.ID
ORDER BY P.ID
📁 참고자료
☺️ 새로 알게 된 지식
😉 리뷰
'프로그래머스 SQL kit' 카테고리의 다른 글
[GROUP BY] 즐겨찾기가 가장 많은 식당 정보 출력하기 (0) | 2024.12.28 |
---|---|
[GROUP BY] 진료과별 총 예약 횟수 출력하기 (1) | 2024.12.28 |
[SELECT]조건에 맞는 개발자 찾기/비트연산 (1) | 2024.12.27 |
[SELECT] 업그레이드 된 아이템 구하기 (0) | 2024.12.27 |
[GROUP BY] 특정 기간동안 대여 가능한 자동차들의 대여비용 구하기 (1) | 2024.12.24 |