Барлық программалау тілдеріндегі сияқты, PL/SQL тілінде де есептеу процесін басқаруға арналған операторлар бар, атап айтқанда: шартты, итеративті және тізбекті басқару операторлары.
IF операторы
PL/SQL тіліндегі IF операторының бірнеше түрі бар.
1. IF <шарт> THEN
<тест нәтижесі TRUE болған кездегі мәлімдемелер тізбегі> END IF;
IF < шарт > THEN
<сынақ нәтижесі TRUE болған кездегі мәлімдеме тізбегі> ЕLSE
<сынақ нәтижесі FALSE болған кездегі мәлімдемелер тізбегі> END IF;
IF < шарт1> THEN
< 1 тексеру нәтижесі TRUE болған кезде операторлар тізбегі>
ELSEIF < шарт 2> THEN
< 2 тексеру нәтижесі TRUE болған кезде операторлар тізбегі>
[ELSE ] END IF;
If-THEN-ELSIF дизайны белгілі бір дәрежеде CASE операторының аналогы болып табылады.
DECLARE
DECLARE
X NUMBER := 6;
BEGIN
IF x = 3 THEN DBMS_OUTPUT.PUT_LINE ('x=3');
ELSIF x = 5 THEN DBMS_OUTPUT.PUT_LINE ('x=5');
ELSIF x = 10THEN DBMS_OUTPUT.PUT_LINE ('x=10');
ELSE
DBMS_OUTPUT.PUT_LINE ('x NOT IN (3,5,10) ‘);
END IF;
END;
/
Оператор CASE
Oracle де CASE операторларының екі түріне қолдау көрсетіледі:
1. - қарапайым CASE операторы PL / SQL операторларының бір немесе бірнеше тізбегін сәйкес мәнмен байланыстырады (орындалатын реттілік көрсетілген мәнді айналдыратын өрнекті есептеу нәтижелерін ескере отырып таңдалады);
2. - CASE іздеу операторы заңды шарттар тізімін есептеу нәтижелеріне байланысты операторлардың біреуін таңдайды (тексеру нәтижесі TRUE-ге тең болған бірінші шартқа байланысты операторлар тізбегі орындалады).
Case операторы басқа, PL / SQL CASE өрнектерін қолдайды. CASE өрнегі case операторына өте ұқсас, ол есептеу үшін бір немесе бірнеше өрнектерді таңдауға мүмкіндік береді. Нәтижесінде бір мән алынады, ал CASE операторының нәтижесі PL/SQL операторларының тізбегін орындау болып табылады.
CASE өрнектері case операторларына ұқсас жұмыс істейді, бірақ орындалатын операторлар үшін емес, өрнектер үшін. Қарапайым case өрнегі есептеулер үшін берілген скалярлық мәнге негізделген бірнеше өрнектердің бірін таңдауға мүмкіндік береді:
<простое_выражение_case> := CASE <выражение>
WHEN<результат1>THEN<результирующее выражение 1>
WHEN<результат2>THEN<результирующее выражение 2>
...
ELSE
<результирующее выражение else> END;
<поисковое_выражение_case> := CASE
WHEN<выражение1>THEN<результирующее выражение 1>
WHEN<выражение2>THEN<результирующее выражение 2>
...
ELSE
<результирующее выражение else> END;
Case іздеу өрнегі қарапайым case өрнегі