https://school.programmers.co.kr/learn/courses/30/lessons/299305
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
- 문제 :
대장균 개체의 ID(ID)와 자식의 수(CHILD_COUNT)를 출력하는 SQL 문을 작성해주세요. 자식이 없다면 자식의 수는 0으로 출력해주세요. 이때 결과는 개체의 ID 에 대해 오름차순 정렬해주세요.
- 풀이 :
-- ECOLI_DATA : ID, PARENT_ID, SIZE_OF_COLONY, DIFFERENTIATION_DATE, GENOTYPE
SELECT e.ID, COUNT(c.ID) AS CHILD_COUNT
FROM ECOLI_DATA e
LEFT JOIN ECOLI_DATA c ON e.ID = c.PARENT_ID
GROUP BY e.ID
ORDER BY e.ID ASC;
- left join을 사용하는 이유는 부모 개체가 자식 개체를 가지지 않는 경우에도 부모 개체를 결과에 포함 시키기 위해
반응형
'IT > SQL 테스트' 카테고리의 다른 글
[SELECT] 특정 형질을 가지는 대장균 찾기 (MySQL) (0) | 2025.02.05 |
---|---|
[SELECT] 대장균의 크기에 따라 분류하기 1 (MySQL) (0) | 2025.02.05 |
[SELECT] 특정 물고기를 잡은 총 수 구하기 (MySQL) (2) | 2025.02.03 |
[SELECT] 가장 큰 물고기 10마리 구하기 (MySQL) (1) | 2025.02.03 |
[SELECT] 잔챙이 잡은 수 구하기 (MySQL) (0) | 2025.02.03 |