IF
IF(조건문, 참일 때의 값, 거짓일 때의 값)
SELECT IF(2 > 1, 'TRUE', 'FALSE') AS result
기본 사용 방식은 엑셀의 =IF() 와 같다.
아래와 같이 특정 컬럼 값의 조건에 의해서, 다른 컬럼의 출력하는 분기 처리도 가능하다.
엑셀 처럼 중첩 IF 의 사용도 가능하다.
SELECT IF(column_name is null, column_1, columnj_2) AS result
IFNULL
IFNULL(column_name, value)
IFNULL() 함수는 해당 필드의 값이 NULL 을 반환할 때, 지정한 값으로 대체하여 출력해준다. 간단한 사용법은 아래와 같다.
SELECT IFNULL(column_name, '대체할 값') FROM [table_name];
이 역시 중첩해서 사용할 수 있다.
SELECT IFNULL(column_name, IFNULl(column_name, '대체할 값')) FROM [table_name];
CASE WHEN
CASE value 혹은 조건 WHEN value1 THEN result1 WHEN value2 THEN result2 … [ELSE else_result] END
SELECT
CASE
WHEN permission_type_id = 1
THEN '관리자'
WHEN permission_type_id = 2
THEN '판매자'
ELSE '일반 유저'
END
WHEN 과 THEN 은 쌍을 이루어 사용해야 한다.
WHEN 조건 혹은 값 THEN 은 여러 번 사용할 수 있으며, 마지막 ELSE 는 모든 조건이 아닐 때 출력되는 값을 지정한다. Java 나 JavaScript 의 switch case 문이라고 보면 된다. SQL 에서는 SELECT 절에 들어갈 수도 있고, FROM 절 혹은 WHERE 절에 들어갈 수도 있다.
'개발 언어들 정리 > SQL' 카테고리의 다른 글
[SQL] 총정리 -- 작성중 (0) | 2022.06.07 |
---|---|
[SQL] 사용시 주의 사항 모음 (0) | 2021.12.31 |
[SQL] 프로그래머스 SQL KIT 풀이 (0) | 2021.12.31 |