Я хочу использовать оператор CASE для проверки параметра условно, например if parameter is an empty string I want to return Nil if not then string 'test'
, но это не работает. Также я не хочу использовать COALESCE
select TEST=CASE '' WHEN '' THEN 'Nil' ELSE 'Test' END,current_timestamp from sysibm.sysdummy1;
Я получаю ошибку
Состояние SQL: 42601 Код поставщика: -104 Сообщение: [SQL0104] Токен = недействителен. Допустимые токены: + - AS. Причина . . . . . : Обнаружена синтаксическая ошибка в токене =. Токен = не является действительным токеном. Неполный список допустимых токенов - + - AS. Этот список предполагает, что оператор верен с точностью до лексемы. Ошибка может быть ранее в операторе, но синтаксис оператора кажется действительным до этого момента. Восстановление . . . : Выполните одно или несколько из следующих действий и повторите запрос: - Проверьте инструкцию SQL в области токена =. Исправьте заявление. Ошибка может заключаться в отсутствии запятой или кавычки, в слове с ошибкой или в порядке следования предложений. - Если маркер ошибки - исправьте оператор SQL, поскольку он не заканчивается допустимым предложением.