Поисковый CASE
CASE WHEN <bool_expr> THEN <result> [WHEN <bool_expr> THEN <result> …] [ELSE <defaultresult>] END
Здесь <bool_expr> выражение, которое даёт тройной логический результат: TRUE, FALSE или NULL.Первое выражение, возвращающее TRUE, определяет результат.Если нет выражений, возвращающих TRUE, то в качестве результата берётся defaultresult из ветви ELSE.Если нет выражений, возвращающих TRUE, и ветвь ELSE отсутствует, результатом будет NULL.
Как и в простом операторе CASE, результаты не обязаны быть литеральными значениями: они могут быть полями или именами переменных, сложными выражениями, или NULL.
CASECANVOTE = CASE
WHEN AGE >= 18 THEN 'Yes'
WHEN AGE < 18 THEN 'No'
ELSE 'Unsure'
END;