MySQL CASE 문은 SELECT 또는 WHERE 절과 같은 쿼리 내부에 조건을 작성할 수 있는 흐름 제어 기능입니다. CASE 문에는 두 가지 구문이 있습니다.
구문-1
CASE val WHEN compare_val1 THEN result1 WHEN compare_val2 THEN result2 . . . Else result END
여기 이 첫 번째 구문에서 val이 compare_val1과 같으면 CASE 문은 result1을 반환합니다. . val이 compare_val2와 같은 경우 CASE 문은 result2를 반환합니다. 등등.
val이 compare_val과 일치하지 않는 경우 CASE 문은 결과를 반환합니다. ELSE에 지정됨 조항.
예
mysql> Select CASE 100 -> WHEN 100 THEN 'It is matched' -> WHEN 200 THEN 'It is not matched' -> ELSE 'No use of this Number' -> END as 'Matching the Number'; +---------------------+ | Matching the Number | +---------------------+ | It is matched | +---------------------+ 1 row in set (0.06 sec)와 일치합니다.
구문-2
CASE WHEN condition_1 THEN result1 WHEN condition_2 THEN result2 . . . Else result END
여기 이 두 번째 구문에서 CASE 문은 result1, result2 등을 반환합니다. . 조건이 참인 경우. 모든 조건이 거짓인 경우 CASE 문은 결과를 반환합니다. ELSE에 지정됨 조항.
예시
mysql> Select CASE -> WHEN (100 = 100) THEN 'It is Matched' -> WHEN (200 = 100) Then 'It is Not Matched' -> Else 'No use of Number' -> END as 'Matching the Number'; +---------------------+ | Matching the Number | +---------------------+ | It is Matched | +---------------------+ 1 row in set (0.00 sec)