Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL IF() 함수의 작동 방식과 사용법 완벽 정리

MySQL의 IF() 함수는 조건에 따라 서로 다른 값을 반환하는 제어 흐름(control flow) 함수입니다. 흔히 IF ELSE 또는 IF THEN ELSE 함수라고도 불리며, 세 개의 표현식을 인자로 받아 첫 번째 표현식이 참(TRUE, 즉 0이 아니고 NULL도 아닌 값)이면 두 번째 표현식을 반환하고, 그렇지 않으면 세 번째 표현식을 반환합니다.

기본 문법

IF(expr, value_if_true, value_if_false)

각 인자의 의미는 다음과 같습니다.

  • expr: 평가할 조건식입니다.
  • value_if_true: expr이 참(TRUE)으로 평가될 때 반환되는 값입니다.
  • value_if_false: expr이 거짓(FALSE)으로 평가될 때 반환되는 값입니다.

사용 예제

조건이 참인 경우와 거짓인 경우 각각 어떻게 동작하는지 아래 예제를 통해 확인할 수 있습니다.

mysql> Select IF(100=100,'YES','NO');
+------------------------+
| IF(100=100,'YES','NO') |
+------------------------+
| YES                    |
+------------------------+
1 row in set (0.00 sec)

mysql> Select IF(100=200,'YES','NO');
+------------------------+
| IF(100=200,'YES','NO') |
+------------------------+
| NO                     |
+------------------------+
1 row in set (0.00 sec)

첫 번째 예제에서는 100=100이라는 조건이 참이므로 'YES'가 반환되고, 두 번째 예제에서는 100=200이라는 조건이 거짓이므로 'NO'가 반환됩니다.

참고 사항

MySQL에서는 IF() 함수 외에도 CASE 표현식을 사용해 더 복잡한 다중 조건 분기를 처리할 수 있습니다. 단순한 이지선다(참/거짓) 판단에는 IF() 함수가 간결하고 유용하며, SELECT문뿐 아니라 WHERE, ORDER BY 등 다양한 절에서 활용할 수 있습니다.