[SQL] CASE 문

2024. 2. 2. 10:28·기타

CASE 문이란?


'CASE'문은 조건에 따라 다른 값을 반환할 수 있게 해준다.
즉 "이 조건이 참이면 어떠한 값을 반환하고 아니면 다른 값을 반환해줘"라고 데이터베이스에 지시하는 것

예를들어
'user'테이블에 있는 'rate'값이 따라 사용자에게 '골드','실버','브론즈' 등급을 매기고싶다.

SELECT id
     , rate
     , CASE
           WHEN rate > 1500 THEN '골드'
           WHEN rate > 1250 THEN '실버'
           ELSE '브론즈'
       END as rank
FROM user;
#CASE
#WHEN 조건1 TEHN 결과1
#WHEN 조건2 TEHN 결과2
#ELSE 결과3
#END AS CASE컬럼이름

쿼리설명


  • SELECT id, rate: user 테이블에서 id와 rate 열을 가져와
  • CASE: 이제 조건을 설정할거다
    • WHEN rate > 1500 THEN '골드': rate가 1500보다 크면, 이 사용자는 '골드' 등급.
    • WHEN rate > 1250 THEN '실버': rate가 1250보다 크고 1500 이하면, '실버' 등급.
    • ELSE '브론즈': 위의 어떤 조건도 맞지 않으면, '브론즈' 등급.
  • END as rank: CASE 문의 결과를 rank라는 새로운 열로 보여달라.
  • FROM user: 이 모든 정보는 user 테이블에서 가져온다.

예시


id rate rank
1 1600 골드
2 1300 실버
3 1200 브론즈
4 1700 골드
5 1100 브론즈
6 1350 실버
7 1500 실버
반응형
저작자표시 비영리 변경금지 (새창열림)

'기타' 카테고리의 다른 글

[SQL] 서브쿼리 (스칼라, 인라인 뷰, 중첩 서브쿼리)  (0) 2024.02.25
[SQL] 정규화와 반정규화  (0) 2024.02.18
[SQL] INNER JOIN  (0) 2024.02.01
ELB - ALB,NLB  (0) 2023.09.02
EBS와 EFS의 차이점  (0) 2023.09.02
'기타' 카테고리의 다른 글
  • [SQL] 서브쿼리 (스칼라, 인라인 뷰, 중첩 서브쿼리)
  • [SQL] 정규화와 반정규화
  • [SQL] INNER JOIN
  • ELB - ALB,NLB
생각 기록실
생각 기록실
AI(LLM)와 서비스 기획을 공부하며 작성하는 기술 블로그입니다. (feat. 영화리뷰를 곁들인..)
    반응형
  • 생각 기록실
    이러쿵 저러쿵
    생각 기록실
  • 전체
    오늘
    어제
  • 링크

    • Github
    • LindeIn
    • 분류 전체보기 (115)
      • 이러쿵 저러쿵 (5)
      • 정보통계 (7)
        • 데이터마이닝 (2)
        • 금융공학 (4)
      • IT (26)
        • Python (10)
        • AWS (5)
        • Github (2)
        • Project (8)
      • 리뷰 (29)
        • 영화 (22)
        • 책 (7)
      • 기타 (48)
  • hELLO· Designed By정상우.v4.10.3
생각 기록실
[SQL] CASE 문
상단으로

티스토리툴바