Вопросы к Поиску с Алисой
Да, в выражении CASE вычисляются все условия THEN. postgrespro.ru sky.pro
Каждое условие в CASE представляет собой выражение, возвращающее результат типа boolean. postgrespro.ru Если результатом выражения оказывается true, значением выражения CASE становится результат, следующий за условием, а остальная часть выражения CASE не вычисляется. postgrespro.ru Если же условие не выполняется, за ним таким же образом проверяются все последующие предложения WHEN. postgrespro.ru
Если не выполняется ни одно из условий WHEN, значением CASE становится результат, записанный в предложении ELSE. postgrespro.ru Если при этом предложение ELSE отсутствует, результатом выражения будет NULL. postgrespro.ru
При этом в выражении CASE вычисляются только те подвыражения, которые необходимы для получения результата. postgrespro.ru Например, так можно избежать ошибки деления на ноль. postgrespro.ru