연도별 대장균 크기의 편차 구하기 (LEVEL2)
분화된 연도(YEAR), 분화된 연도별 대장균 크기의 편차(YEAR_DEV), 대장균 개체의 ID(ID) 를 출력하는 SQL 문을 작성
분화된 연도별 대장균 크기의 편차는 분화된 연도별 가장 큰 대장균의 크기 - 각 대장균의 크기
정렬 연도에 오름차순, 대장균 크기의 편차 오름차순
정답 코드
SELECT YEAR, YEAR_COLONY - SIZE_OF_COLONY AS YEAR_DEV, ID
FROM ECOLI_DATA E JOIN (SELECT YEAR(DIFFERENTIATION_DATE) YEAR, MAX(SIZE_OF_COLONY) YEAR_COLONY
FROM ECOLI_DATA
GROUP BY YEAR) Y ON YEAR(DIFFERENTIATION_DATE) = Y.YEAR
ORDER BY Y.YEAR, YEAR_DEV
MEMO
처음에는 DATE TYPE 이 아닌 String 이라고 생각해서 아래와 같이 풀었다. 결과가 똑같이 출력되는데 실패가 떴다. 아직 이유를 모르겠다.
SELECT YEAR, YEAR_COLONY - SIZE_OF_COLONY AS YEAR_DEV, ID
FROM ECOLI_DATA E JOIN (SELECT SUBSTRING_INDEX(DIFFERENTIATION_DATE, '-', 1) YEAR, MAX(SIZE_OF_COLONY) YEAR_COLONY
FROM ECOLI_DATA
GROUP BY YEAR) Y ON SUBSTRING_INDEX(DIFFERENTIATION_DATE, '-', 1) = Y.YEAR
ORDER BY YEAR, YEAR_DEV
'문제 풀이 > 프로그래머스' 카테고리의 다른 글
[MYSQL 27] ROOT 아이템 구하기 (0) | 2024.09.26 |
---|---|
[MYSQL 26] 입양 시각 구하기 (1) (2) | 2024.09.25 |
[JAVA 33] 두 큐 합 같게 만들기 (0) | 2024.09.23 |
[MYSQL 23] 조건에 맞는 사원 정보 조회하기 (1) | 2024.09.22 |
[MYSQL 22] 동명 동물 수 찾기 (0) | 2024.09.21 |