1. CASE WHEN ~ THEN ~ ELSE ~ END
💡 SELECT CASE WHEN 조건1 THEN 결과값1
WHEN 조건2 THEN 결과값2
ELSE 결과값3 END
FROM 테이블 이름 ;
▶ CASE WHEN 예제
SELECT *,
CASE WHEN Mkt_Capitalization_USD > 1000000 THEN 'BIG' -- MKT가 100만이상이면 BIG
WHEN Mkt_Capitalization_USD > 500000 THEN 'MIDDLE' -- MKT가 50만이상이면 MIDDLE
ELSE 'SMALL' -- 아니라면 SMALL이라고 표시하고
END AS 그룹 -- 그룹이라고 컬럼명 지정
FROM stock_info
ORDER BY Mkt_Capitalization_USD DESC ;
2. IF문
IF(조건문, 참일때값, 거짓일때 값)
참일때 값은 필수, 거짓일때 값은 선택
💡 SELECT IF(조건문, 참일때 값, 거짓일때 값)
FROM 테이블;
▶ IF문 예제
# 1
SELECT IF(10 > 1, 'TRUE', 'FALSE')
FROM TABLE1
# 2
SELECT IF(col_name is null, col1, col2)
FROM TABLE2
2-1. IFNULL
※ MySQL사용
💡 SELECT IFNULL(지정한 값, 대체할 값)
FROM 테이블;
"지정한 값"이나 컬럼에 NULL이면 "대체할 값"으로 대체해서 출력한다.
▶ IFNLL문 예제
SELECT IFNULL(col1, "없음") AS col1
FROM TABLE1;
2-2. ISNULL
※ MySQL에서 ISNULL은 없고, IFNULL만 사용한다. ISNULL은 MSSQL에서 사용한다.
💡 SELECT ISNULL(지정한 값, 대체할 값)
FROM 테이블;
"지정한 값"이 NULL이면 "대체할 값"으로 대체해서 출력한다.
CASE WHEN, IF문 사용해서 푼 프로그래머스 문제
2022.11.07 - [Data Analytics/Programmers] - [프로그래머스] 중성화 여부 파악하기 / CASE WHEN / IF
[프로그래머스] 중성화 여부 파악하기 / CASE WHEN / IF
# [1] SELECT ANIMAL_ID, NAME, CASE WHEN SEX_UPON_INTAKE LIKE '%Neutered%' THEN 'O' WHEN SEX_UPON_INTAKE LIKE '%Spayed%' THEN 'O' ELSE 'X' END AS '중성화' FROM ANIMAL_INS ORDER BY ANIMAL_ID # [2] SELECT ANIMAL_ID, NAME, IF(SEX_UPON_INTAKE LIKE '%NEUTERED
dataanalysisdot.tistory.com
'🛠️Skill > SQL' 카테고리의 다른 글
[SQL문법] GROUP BY / HAVING - MySQL (0) | 2022.11.07 |
---|---|
[SQL문법] 집계(SUM,AVG,COUNT), 숫자(TRUNCATE,ROUND) 함수 (0) | 2022.11.02 |
[SQL문법] ORDER BY 데이터 정렬하기 (0) | 2022.10.05 |
[SQL문법] SELECT,WHERE절 / AND,OR,IN,LIKE / DML (0) | 2022.10.05 |
[oracle] 서울시 가장 비싼 물건과 가격 출력 / 서브쿼리 / ROWNUM (0) | 2022.10.04 |
댓글