초이준철
물낌표
초이준철
전체 방문자
오늘
어제
  • 분류 전체보기 (66) N
    • Python (6)
    • SQL (37)
    • 경험 (6)
    • Tableau (7)
      • Tableau 기본 (2)
      • Tableau 빅스데이터 22여름 대학생 TWBX (5)
    • 책으로 배우는 공부 (10) N
      • 통계 학습 (4) N
      • 데이터 책 (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • mysql concat
  • 새빨간 거짓말 통계
  • MYSQL CASE문
  • mysql 문자열 연결
  • 물낌표
  • MYSQL 집계함수
  • TWBX 과제
  • 데이터분석가
  • MYSQL group by
  • TWBX 대학생
  • MYSQL insert
  • MYSQL 테이블 구조
  • 데이터리안
  • mysql 문자열 자르기
  • MYSQL desc
  • 데벨챌
  • mysql set
  • Mysql ifnull
  • 스터디 1일차
  • 통계101x데이터 분석

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
초이준철

?!

[MySQL] CASE 기본개념, 예제로 쉽게 이해하기
SQL

[MySQL] CASE 기본개념, 예제로 쉽게 이해하기

2022. 8. 18. 20:26

CASE문이란? '조건문'

 

기본형식 및 기억할 것들

CASE
WHEN 조건1 THEN 조건1 충족할 때 반환되는 값
WHEN 조건2 THEN 조건2 충족할 때 반환되는 값
WHEN 조건3 THEN 조건3 충족할 때 반환되는 값
ELSE 모든 조건 해당되지 않을 때 반환되는 값
END

1) WHEN - THEN은 항상 같이 사용하기

2) WHEN - THEN 개수 상관 없음

3) ELSE가 없고, WHEN - THEN 조건 충족하지 않으면 NULL 값 반환

4) 조건문 마지막에 END 꼭 써주기

 

프로그래머스 예제

출처: 프로그래머스

SEX_UPON_INTAKE 열에서 중성화 여부를 'O', 'X'로 변경하고 칼럼의 이름도 '중성화'로 변경해볼게요.

'Newtered Male' → 'O'

'Spayed Female' → 'O'

'Intact Male' → 'X'

 

CASE문 활용 쿼리

SELECT ANIMAL_ID, NAME,
(CASE
    WHEN SEX_UPON_INTAKE = 'Neutered Male' THEN 'O'
    WHEN SEX_UPON_INTAKE = 'Spayed Female' THEN 'O'
    ELSE 'X'
END) AS '중성화'
FROM ANIMAL_INS;

 

CASE 문을 사용할 때 별칭(AS)을 해주는 것이 좋아요.

왜냐하면 별칭을 하지 않으면 출력할 때 CASE문 전체가 열 이름으로 출력되기 때문입니다.

 

결괏값

출처: 프로그래머스

저작자표시 (새창열림)
    'SQL' 카테고리의 다른 글
    • [MySQL] Null 값 처리하는 방법 (IFNULL, CASE)
    • [MySQL] 숫자형 함수 정리 (ABS, ROUND, CEILNG, FLOOR, POWER, SQR)
    • [MySQL] UNION의 기본 개념, 사용법을 예시로 쉽게
    • [MYSQL] 데이터 삭제하는 방법 DELETE, DROP, TRUNCATE
    초이준철
    초이준철
    WNWA

    티스토리툴바