본문 바로가기
GA 및 data/SQL

[SQL] IF, CASE, IFNULL 조회

by 오구송이 2024. 11. 23.

함수 설명

함수 설명
IF(조건, T, F) 조건이 참이라면 T, 거짓이면 F 반환
CASE
   WHEN A조건문 THEN A결과
   WHEN B조건문 THEN B결과
   ELSE C결과
END
 - IF와 같지만 좀 더 복잡한 조건인 경우 사용함
 - A조건문에 충족되면 A결과를, B조건문에 충족되면 B결과를, 그외는 C결과를 출력
IFNULL(A, B) A가 NULL일 시 B 출력

함수별 예시

  • SELECT IF(Price > 30, ‘매우비쌈’, ‘저렴’) FROM Product ;
    • 의미: Product 테이블에서 Price 칼럼 값이 30보다 크면 ‘매우비쌈’, 작으면 ‘저렴’으로 값을 출력해라
    • 결과: Price 칼럼 값이 35면 ‘매우비쌈’, 28이면 ‘저렴’ 출력
  • SELECT CASE WHEN Price > 30 THEN ‘매우비쌈’ ELSE '저렴' FROM Product ;
    • 의미: Product 테이블에서  Price 칼럼 값이 30보다 크면 ‘매우비쌈’, 작으면 ‘저렴’으로 값을 출력해라
    • 결과: Price 칼럼 값이 35면 ‘매우비쌈’, 28이면 ‘저렴’ 출력
    • SELECT CASE WHEN Price > 30 THEN ‘매우비쌈’  Price < 25 THEN ‘저렴’  ELSE '보통' FROM Product ;
      • 의미: Product 테이블에서  Price 칼럼 값이 30보다 크면 ‘매우비쌈’, 25보다 작으면 ‘저렴’, 그 외에는 '보통'으로 값을 출력해라
      • 결과: Price 칼럼 값이 35면 ‘매우비쌈’, 28이면 ‘보통’, 21이면 '저렴'으로 출력
  • SELECT IFNULL('A', 'B') ;
    • 의미: ‘A’가 null이 아니면 ‘A’를 출력하고, null이라면 ‘B’를 출력해라
    • 결과: A
  • SELECT IFNULL(NULL, 'B');
    • 의미: ‘A’가 null이 아니면 ‘A’를 출력하고, null이라면 ‘B’를 출력해라
    • 결과: B
728x90
반응형
LIST

'GA 및 data > SQL' 카테고리의 다른 글

[SQL] 서브쿼리  (0) 2024.11.26
[SQL] 그룹함수  (0) 2024.11.24
[SQL] 시간과 날짜 함수  (0) 2024.11.21
[SQL] 사칙연산 조회  (0) 2024.11.17
[SQL] 숫자 조회  (0) 2024.11.16

댓글