반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/299308
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제풀이
각 분기별 분화된 대장균의 총 수를 구해야합니다.
분기란?
1 ~ 3월 -> 1분기
4 ~ 6월 -> 2분기
7 ~ 9월 -> 3분기
10 ~ 12 -> 4분기
1. 각 분기를 어떻게 나눌 것인가?!
조건을 통해 분기를 나누고 GROUP BY 해준다
SELECT
CASE
WHEN MONTH(DIFFERENTIATION_DATE) BETWEEN 1 AND 3 THEN '1Q'
WHEN MONTH(DIFFERENTIATION_DATE) BETWEEN 4 AND 6 THEN '2Q'
WHEN MONTH(DIFFERENTIATION_DATE) BETWEEN 7 AND 9 THEN '3Q'
ELSE '4Q'
END
AS QUARTER, COUNT(ID)AS ECOLI_COUNT
FROM ECOLI_DATA
GROUP BY QUARTER
ORDER BY QUARTER
2. QUARTER 함수를 통해 분기를 구하고 CONCAT함수를 통해 Q를 붙여준다
SELECT CONCAT(QUARTER(DIFFERENTIATION_DATE), 'Q') AS QUARTER, COUNT(ID) AS ECOLI_COUNT
FROM ECOLI_DATA
GROUP BY QUARTER
ORDER BY QUARTER
반응형
'SQL' 카테고리의 다른 글
[SQL] 물고기 종류 별 대어 찾기 (MySQL) (0) | 2024.10.18 |
---|---|
[SQL] 업그레이드 할 수 없는 아이템 구하기 (MySQL) (0) | 2024.10.16 |
[SQL] 특정 조건을 만족하는 물고기별 수와 최대 길이 구하기(MySQL) (0) | 2024.10.11 |
[SQL] 조건에 맞는 사원 정보 조회하기 (MySQL) (0) | 2024.09.20 |