CASE
•
CASE 연산자는 비슷한 값을 서로 비교하거나, 조건에 따라 다른 값을 반환한다. (switch문과 비슷)
•
첫 번째 CASE 예시에서는 CASE 키워드 다음으로 오는 value와 compare_value 값을 비교하여 result를 실행한다.
•
두 번째 CASE 예시에서는 condition의 조건을 판단하여 result를 실행한다.
•
WHEN과 THEN은 한 쌍이어야 한다.
•
ELSE 부분이 없는 상태에서 조건이 참이면 NULL을 반환한다.
-- vlaue를 비교하여 해당하는 result 실행
CASE value
WHEN [compare_value] THEN result
[WHEN [compare_value] THEN result] ...
[ELSE result]
END
-- condition의 boolean값으로 result 실행
CASE
WHEN [condition] THEN result
[WHEN [condition] THEN result] ...
[ELSE result]
END
SQL
복사
IF()
•
condition의 논리 값을 판단하여 참이면 value_if_true를 반환하고, 거짓이면 value_if_false를 반환한다.
IF(condition, value_if_true, value_if_false)
SQL
복사