CASE 문

모든 명령어에는 조건문이 있다. SQL에서는 IF, CASE문이 그 예인데, 가장 사용을 많이하는 조건문은 CASE문이다.

 

 

 

사용 구문

CASE 
    WHEN [조건절] THEN [TRUE일때값]
    ELSE [FALSE일때값] 
END

 

 

 

 

사용 예시

ID NAME SCORE
1 손흥민 95
2 이강인 85
3 김민재 75
4 황희찬 65

STUDENT 테이블에 담긴 데이터이다.

 

 

 

SELECT ID, NAME, SCORE,
    CASE 
        WHEN SCORE >= 90 THEN 'A'
        WHEN SCORE BETWEEN 80 AND 89 THEN 'B'
        WHEN SCORE BETWEEN 70 AND 79 THEN 'C' 
        WHEN SCORE BETWEEN 60 AND 69 THEN 'D'
        ELSE 'F'
    END AS GRADE
FROM STUDENT

 

GRADE 라는 등급을 나타내기 위해, SCORE 컬럼을 이용한다. WHEN 문에 조건절을 적고, THEN으로 해당 조건이 맞을 경우 반환하는 반환값을 작성한다. ELSE는 위에서 적은 모든 조건문에 해당하는게 없을 경우 반환할 값을 적는다. END로 CASE문의 끝이란 걸 알린다. 그리고 AS로 쓰고 싶은 해당 컬럼의 이름을 작성하면 된다. (GRADE)

 

 

ID NAME SCORE GRADE
1 손흥민 95 A
2 이강인 85 B
3 김민재 75 C
4 황희찬 65 D

 

쿼리 실행결과, CASE 조건문으로 설정한 대로 반환된 GRADE 컬럼을 볼 수 있다.

'DBMS' 카테고리의 다른 글

[Database] DDL, DML, DCL  (0) 2025.01.09
[SQL] 종류별 JOIN  (0) 2023.06.11
[MySQL] 서브쿼리  (0) 2023.05.30
[MySQL] LIMIT 와 LIKE  (0) 2023.05.27
[MySQL] auto_increment  (0) 2023.05.25

+ Recent posts