기본 콘텐츠로 건너뛰기

라벨이 분류인 게시물 표시

SQL CASE WHEN - 분류하기

1. 데이터를 카테고리로 나눠 분류해야 할 때가 있다. 이럴 때 CASE WHEN 구문을 사용한다. CASE WHEN의 기본 문법은 아래와 같다. 1 2 3 4 5 CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 ELSE resultN END AS new_column_name CASE WHEN ~ END로 끝난다. END 다음에 AS new_column_name을 사용하여 이름을 부여할 수도 있다. 2. 유저들의 키 정보를 가지는 샘플 DB를 아래와 같이 만들자 1 2 3 4 5 6 7 CREATE TABLE USERS(id integer, height integer); INSERT INTO USERS VALUES ( 1 , 185 ); INSERT INTO USERS VALUES ( 2 , 170 ); INSERT INTO USERS VALUES ( 3 , 168 ); INSERT INTO USERS VALUES ( 4 , 177 ); INSERT INTO USERS VALUES ( 5 , 160 ); 3. 키를 구분해보자 키가 175 이상은 High, 165 이하는 Small, 나머지는 Middle로 구부시키려고 한다. 아래와 같이 쿼리를 작성하면 된다. 1 2 3 4 5 6 7 8 SELECT id, CASE WHEN height >= 175 then 'High' WHEN height <= 165 then 'Small' ELSE 'Middle' END AS 'category' FROM USERS ; 4. 아래와 같이 id별로 키의 category가 분류되었음을 확인할 수 있다. 끝.