-
[mysql] SELECT - 대장균의 크기에 따라 분류하기 2프로그래머스/쿼리 2025. 3. 19. 11:51
SELECT A.ID, CASE WHEN A.R > A.MAX_ID * 0.75 THEN 'CRITICAL' WHEN A.R > A.MAX_ID* 0.5 THEN 'HIGH' WHEN A.R > A.MAX_ID * 0.25 THEN 'MEDIUM' ELSE 'LOW' END AS COLONY_NAME FROM (SELECT ID # 순위 , ROW_NUMBER() OVER (ORDER BY SIZE_OF_COLONY) AS R # 총 데이터의 수 , MAX(ID) OVER() AS MAX_ID FROM ECOLI_DATA) A ORDER BY ID
설명하자면
, ROW_NUMBER() OVER (ORDER BY SIZE_OF_COLONY) AS R
이 부분에서 순위를 구하고
, MAX(ID) OVER() AS MAX_ID
이 부분에서 총 데이터의 수를 구한다
이 부분만 실행시키면 아래와 같은 결과
gpt가 설명해주길
이렇게 나온 결과에서
최종적으로 결과값을 구하면 됨
'프로그래머스 > 쿼리' 카테고리의 다른 글
[oracle] IS NULL - NULL 처리하기 (0) 2025.03.25 [oracle] GROUP BY - 년, 월, 성별 별 상품 구매 회원 수 구하기 (0) 2025.03.24 [oracle] JOIN - 5월 식품들의 총매출 조회하기 (0) 2025.03.24 [oracle] String, Date - 오랜 기간 보호한 동물(2) (0) 2025.03.23 [mysql] SELECT - 특정 세대의 대장균 찾기 (0) 2025.03.19