| Печать Открыть версию интерактивной справки в формате PDF

#### Операторы выбора Операторы выбора представляют собой строительные блоки для создания условных выражений, дающих различные результаты при различных значениях в столбцах. ### ### Case (переключатель) Эта форма оператора выбора Case называется также формой CASE (поиск). Вычисляется значение выражения1, затем значение выражения WHEN. Если значение выражения1 равно значению какого-либо выражения WHEN, результатом оператора является значение соответствующего выражения THEN. Если значение выражения1 равно результатам выражений нескольких фраз WHEN, результат оператора определяется только первым соответствием. Если не наблюдается равенства ни одному выражению WHEN, результатом оператора является значение выражения ELSE. Если выражение ELSE не задано, результатом оператора является неопределенное значение (NULL). Называется также оператором Case (If). Синтаксис: CASE выражение1 WHEN выражение THEN выражение {WHEN выражение... THEN выражение...} ELSE выражение Окончание Где: CASE Начало оператора CASE. Далее должно следовать выражение и один либо несколько операторов WHEN и THEN, необязательный оператор ELSE и ключевое слово END. WHEN Задает условие, которое должно быть выполнено. THEN Задает присваиваемое оператору значение в случае выполнения условия соответствующего выражения WHEN. ELSE Задает присваиваемое оператору значение при невыполнении условия ни одного оператора WHEN. Если эта часть опущена, по умолчанию принимается равным ELSE NULL. Окончание Завершает оператор CASE. Пример CASE Score-par WHEN -5 THEN 'Birdie on Par 6' WHEN -4 THEN 'Must be Tiger' WHEN -3 THEN 'Three under par' WHEN -2 THEN 'Two under par' WHEN -1 THEN 'Birdie' WHEN 0 THEN 'Par' WHEN 1 THEN 'Bogey' WHEN 2 THEN 'Double Bogey' ELSE 'Triple Bogey or Worse' Окончание В примере выше операторы WHEN должны задавать строгое равенство; условие для оператора WHEN WHEN < 0 THEN 'Under Par' является недопустимым, т.к. операторы сравнения не допускаются. ### ### Case (If) В этой форме оператора Case выполняется проверка всех условий WHEN, и, если условие выполняется, результатом оператора является значение соответствующего выражения THEN. Если не выполняется ни одно из условий WHEN, результатом оператора является значение по умолчанию, заданное выражением ELSE. Если выражение ELSE не задано, результатом оператора является неопределенное значение (NULL). Называется также оператором Case (переключатель). Синтаксис: CASE WHEN условие_запроса1 THEN выражение1 {WHEN условие_запроса2 THEN выражение2} {WHEN условие_запроса... THEN выражение...} ELSE expression Окончание Где: CASE Начало оператора CASE. Далее должен следовать один либо несколько операторов WHEN и THEN, необязательный оператор ELSE и ключевое слово END. WHEN Задает условие, которое должно быть выполнено. THEN Присваиваемое оператору значение в случае выполнения условия соответствующего выражения WHEN. ELSE Задает значение при невыполнении условия ни одного из операторов WHEN. Если эта часть опущена, по умолчанию принимается равным ELSE NULL. Окончание Завершает оператор CASE. Пример CASE WHEN score-par < 0 THEN 'Under Par' WHEN score-par = 0 THEN 'Par' WHEN score-par = 1 THEN 'Bogie' WHEN score-par = 2 THEN 'Double Bogey' ELSE 'Triple Bogey or Worse' Окончание В отличие от формы 'переключатель' оператора CASE, операторы WHEN в форме 'If' допускают использование операторов сравнения; условие WHEN WHEN < 0 THEN 'Under Par' является допустимым.

Опубликовано в Август 2022 | Copyright © Oracle и/или ее дочерние компании, 2005, 2022. Legal Notices.