Условный оператор

Назначение

Условный оператор предназначен для организации ветвлений в процессе выполнения хранимой процедуры или триггера.

Синтаксис

           
IF <​выражение условия 1​> THEN
  <​операторы 1​>
[ELSEIF <​выражение условия 2​> THEN
  <​операторы 2​>
 ]
....
[ELSE
  <​операторы N​>
]
ENDIF[;]

Описание

Условный оператор может содержать нуль или несколько ветвей ELSEIF, а после них нуль или одну ветвь ELSE. При его исполнении вычисляется <​выражение условия 1​>, результат которого должен быть логического типа. Если его значение TRUE, выполняются <​операторы 1​>, и далее управление передается на следующий после ENDIF оператор. Если его значение FALSE, аналогичные действия выполняются с выражениями и операторами последующих ветвей ELSEIF, если они есть. Если ветвей ELSEIF нет или все значения их выражений FALSE, то выполняются <​операторы N​> ветви ELSE, или управление передается за ENDIF, если ветви ELSE нет.

Пример условного оператора

if n ​> -1 and n <​ 0.5 then
  call processing(1);
elseif n ​>= 0.5 and n <​ 2 then
  call processing(2);
elseif n ​>= 2 and n <​ 10 then
  call processing(3);
else
  call processing(4);
endif