노아
[프로그래머스] 분기별 분화된 대장균의 개체 수 구하기 본문
Question
각 분기(QUARTER)별 분화된 대장균의 개체의 총 수(ECOLI_COUNT)를 출력하는 SQL 문을 작성해주세요. 이때 각 분기에는 'Q' 를 붙이고 분기에 대해 오름차순으로 정렬해주세요. 대장균 개체가 분화되지 않은 분기는 없습니다.
Pseudocode
- 테이블 정의:
- ECOLI_DATA: 대장균 개체의 정보를 담고 있는 테이블.
- 분기 계산:
- DIFFERENTIATION_DATE의 월을 기준으로 해당 개체가 속한 분기를 계산합니다.
- MONTH(DIFFERENTIATION_DATE)를 사용하여 월을 추출합니다.
- (MONTH(DIFFERENTIATION_DATE) - 1) / 3를 사용하여 분기를 계산합니다.
- 월을 1에서 12까지 나눈 후 3으로 나누어 분기를 결정합니다.
- TRUNCATE(..., 0)을 사용하여 소수점을 버립니다.
- + 1을 통해 1부터 시작하는 분기를 만듭니다.
- 'Q'를 결합하여 결과를 '1Q', '2Q', '3Q', '4Q' 형식으로 만듭니다.
- 집계:
- 각 분기별로 개체 수를 계산합니다 (COUNT(*)).
- 정렬:
- 결과를 분기(QUARTER) 기준으로 오름차순으로 정렬합니다.
Code
select concat(
TRUNCATE((month(DIFFERENTIATION_DATE) - 1) / 3, 0) + 1,
'Q') QUARTER, count(*) ECOLI_COUNT
from ECOLI_DATA
group by QUARTER
order by QUARTER
'알고리즘 > SQL' 카테고리의 다른 글
[프로그래머스] 오프라인/온라인 판매 데이터 통합하기 (0) | 2024.09.20 |
---|---|
[프로그래머스] 노선별 평균 역 사이 거리 조회하기 (0) | 2024.09.20 |
[프로그래머스] 조건에 부합하는 중고거래 댓글 조회하기 (0) | 2024.09.19 |
[프로그래머스] 업그레이드 할 수 없는 아이템 구하기 (0) | 2024.09.19 |
[프로그래머스] 대장균들의 자식의 수 구하기 (0) | 2024.09.19 |