PL/SQL流程控制

一、条件语句

1.IF ELSE 语句:

①一个条件的时候:PL/SQL流程控制_第1张图片

②两个条件的时候:PL/SQL流程控制_第2张图片

   多个条件的时候:PL/SQL流程控制_第3张图片

(注意是ELSIF 而不是ELSEIF )

应用实例:PL/SQL流程控制_第4张图片

2.case when then表达式

PL/SQL流程控制_第5张图片

同样拿一道题去举例

PL/SQL流程控制_第6张图片

注意(赋值的变量写在case之前)且每个when then 后不需要加分号。

二、循环语句

1.简单循环

LOOP

    要执行的语句;

EXIT WHEN<条件语句>; /*条件满足,退出循环语句*/

END LOOP;

举例:PL/SQL流程控制_第7张图片 

第四个迭代条件也可以放置在循环体中,这和循环条件有关,本例中如果将迭代条件放在循环体重,那么循环条件应该改为v_i>100

类似于C语言中 do while循环语句

2.while循环

while <布尔表达式> LOOP 

    要执行的语句;

    迭代条件;(可以写在表达式中)

END LOOP;

举例:PL/SQL流程控制_第8张图片

3.数字式循环

for 循环计数器 in [reverse] 下限..上限 LOOP

    要执行的语句;

END LOOP;

(reverse是相反的意思,将下限与上限颠倒)

举例:PL/SQL流程控制_第9张图片

4.goto

PL/SQL流程控制_第10张图片

当相除已经等于0的情况下没有必要再进行内层循环(因为已经证明此数不是质数了),直接用goto 跳到 自定义的一个标签中(此处为label)。 

你可能感兴趣的:(sql再学习,实战oracle)