Инструменты пользователя

Инструменты сайта


Боковая панель

Введение

Статьи и часто задаваемые вопросы

Установка и настройка

Обработка ошибок

Полезные запросы SQL

Тематические группы

No renderer 'pdf' found for mode 'pdf'
case

Это старая версия документа!


CASE

Версии сервера

0.9 1.0 1.5.3 1.5.4 1.5.5 2.0 2.0.3 2.0.4 2.1 2.5 3.0
? ? Да Да Да Да Да Да Да Да Да

Формат

case [<переменная>]

when <условие> then <значение>

[when <условие> then <значение>]

[when <условие> then <значение>]

[else <значение>]

end

Описание

Встроенная функция, разным значениям переменой возвращает заданное значение. В случае одновременной истинности нескольких условий, функция вернет результат первого вхождения.

Пример

select sl.po_number,
  case sl.order_status
    when 'open' then 'открыт'
    when 'waiting' then 'в ожидании'
    when 'shipped' then 'отгруженный'
    else 'ошибка определения!!'
  end
 from sales sl

или

select sl.po_number,
  case
    when sl.order_status = 'open' then 'открыт'
    when sl.order_status = 'waiting' then 'в ожидании'
    when sl.order_status = 'shipped' then 'отгруженный'
    else 'ошибка определения!!' 
  end
 from sales sl

См. также

Только авторизованные участники могут оставлять комментарии.
case.1399269792.txt.gz · Последние изменения: 2014/05/05 10:03 — stoneface