Składnia IF
jest :
IF(test_expr, then_expr, else_expr)
więc możesz zrobić coś takiego jak IF(test1, result1, IF(test2, result2, else_result))
ale nie byłby zbyt czytelny, więc jest CASE
wyrażenie w tym celu.
CASE WHEN test1 THEN result1
WHEN test2 THEN result2
ELSE else_result END
Jeśli chcesz warunkować wybraną kolumnę, możesz użyć IF
bezpośrednio w wybranych polach:
SELECT IF(match, nl_column en_column) AS lang
FROM table
Zauważ, że wyrażenie w klauzuli where ma wartość TRUE
lub FALSE
, więc pisząc
IF(expr, TRUE, FALSE)
jest taki sam jak
expr