상세 컨텐츠

본문 제목

[프로그래머스] 대장균의 크기에 따라 분류하기2

💯ProblemSolving/문제풀이-SQL

by :부셔져버린개발자 2025. 1. 16. 14:12

본문

       문제 요약        

- 문제

https://school.programmers.co.kr/learn/courses/30/lessons/301649

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

         아이디어        

WITH 데이터이름 AS (

) SELECT * FROM 데이터이름 ORDER BY ID;

 

 

NTILE(몇개의그룹) OVER (ORDER BY 사이즈 DESC)

 

 

RANK() OVER ( [PARTITION BY partition_expression, ... ] ORDER BY sort_expression [ASC | DESC], ... )

 

         소스코드        

WITH RankedData AS (
    SELECT 
        ID,
        size_of_colony,
        NTILE(4) OVER (ORDER BY size_of_colony DESC) AS percentile_group
    FROM 
        ecoli_data
)
SELECT 
    ID,
    CASE 
        WHEN percentile_group = 1 THEN 'CRITICAL' -- 상위 25%
        WHEN percentile_group = 2 THEN 'HIGH' -- 25~50%
        WHEN percentile_group = 3 THEN 'MEDIUM' -- 50~75%
        WHEN percentile_group = 4 THEN 'LOW' -- 하위 25%
    END AS COLONY_NAME
FROM 
    RankedData
ORDER BY 
    ID;



 

728x90

관련글 더보기