Выражения CASE

Оценить
(0 голоса)

При программировании приложений баз данных иногда бывает необходимыми изменять представление данных. Например, род (gender) человека может быть кодирован с использованием значений 1, 2 и 3 (для женщины, мужчины и ребенка соответственно). Такие программные техники позволяют сократить время на реализацию программы. Выражение case в языке Transact-SQL делает подобный тип кодирования простым в реализации.

Выражение case имеет две различные формы:

♦ простое выражение case;

♦ поисковое выражение case. Синтаксис простого выражения case:

case expression_l

[when expression_2 then result_l]...

[else result_n] end

Оператор Transact-SQL с простым выражением case отыскивает первое выражение в списке всех предложений where, которое соответствует выражению expression_i, и выполняет соответствующее предложение then. Если соответствие не найдено, то выполняется предложение else.

Синтаксис поискового выражения case:

case

[when condition_l then result_l]  ... [else result_n]

end

Оператор Transact-SQL с поисковым выражением case отыскивает первое выражение, которое при вычислении дает истину. Если никакое условие when не дает истину, то возвращается значение выражения else. В примере 6.47 показано использование поискового выражения case.

 

Выражения CASE

Выражения CASE

 

В примере 6.47 бюджеты всех проектов взвешиваются, и отображаются все весовые коэффициенты (вместе с именами соответствующих проектов).

В примере 6.48 показан другой вариант с выражением case, где предложение when содержит внутренний запрос как часть выражения.

 

Выражения CASE

 


Предложение COMPUTE
Временные таблицы
Оператор JOIN
Две синтаксические формы для реализации соединений
Естественное соединение

Добавить комментарий


Защитный код
Обновить

© 2018 www.serversql.ru. Все права защищены.