引入:
为了解决不同的在实际开发中的不同的需求,SQL同样提供了类似java一样的流程控制结构,主要包括顺序结构,选择结构,循环结构等。
流程控制语句概述
流程控制语句概述:
1.概述:
一般一个程序执行的时候,是从上到下,也就是说哪一条语句在前,就会先执行这一个语句,但是有时候我们的需求并不是这样的有的语句我们需要先执行,有些需要后执行,有些需要加条件执行,这一个时候我们就需要使用流程控制语句来解决这些问题。
2.分类:
顺序结构
选择结构
循环结构
流程控制语句详解以及基本使用
1.选择结构
分支结构的内容详解:
1.if函数
(1).功能:能够实现按照设置条件的简单分支结构
(2).基本语法:
if(表达式1,表达式2,表达式3)
执行流程:表达式1一般就是条件表达式,如果表达式1成立(也就是true),那么就返回表达式2的值,
否则就返回表达式3的值。
(3).使用情况:需要使用简单的分支,可以使用在任何的场景。
2.case结构
(1).功能:
类似于java中的switch语句,一般可以用于实现等值判断。
类似于java中的多条件if语句,一般可以用于实现区间判断。
(2).语法结构:
情况1:等值判断语法
case 变量|表达式|字段
when 要判断的值 then 返回值1或者是可执行语句;
when 要判断的值 then 返回值2或者是可执行语句;
when 要判断的值 then 返回值3或者是可执行语句;
...
esle 要返回在值n;
end case;
情况2:使用于区间判断
case
when 要判断的条件1 then 返回值1或者是可执行语句;
when 要判断的条件2 then 返回值2或者是可执行语句;
when 要判断的条件3 then 返回值3或者是可执行语句;
...
esle 要返回在值n;
end case;
(3).使用特点
A:作为表达式,嵌套在其他语句中使用,可以放置在任何地方。(也就是说可以放在begin end中或者
是放置在begin end的外面)。
B:作为表达式,只能够放置在begin end中。
(4).执行特点
如果when中的值满足或者是条件满足,则执行then后面的语句,这一个时候就会跳出整个case语句,如
果都没有满足,那么将会执行else后面的语句,如果说没有写else语句(或者是省略了),这一个时候将
会返回null。
3.if结构(注意不是if函数)
(1).功能:可以实现多条件分支
(2).语法结构
if 条件1 then 语句1;
elseif 条件2 then 语句2;
...
[else 语句n]
end if
(3).使用特点
if结构只能够应用在begin end中使用。
基本使用测试:
如:根据传入的不同的区间,给出不同的成绩等级。(if结构使用测试)
如:根据传入的不同的区间,给出不同的成绩等级。(case结构使用测试)
2.循环结构
流程控制语句之循环结构
1.常见的循环结构分类
while loop repeat
2.循环控制
(1).基本使用
循环控制可以操作循环的执行效果,按照需求来进行循环的次数以及循环的过程。
(2).常见的循环控制语句
iterate :功能类似于java中的continue,结束本次循环,继续下一次。
leave :类似于java中的break,用于跳出,结束当前所在循环。
3.内容详解
while循环
基本语法
[标签:] while 循环体 do
循环体;
end while [标签];
loop循环
基本语法
[标签:] loop
循环体;
end loop [标签];
可以用来模拟简单的死循环。
repeat
基本语法
[标签:] repeat
循环体;
until 结束循环的条件
end repeat [标签] ;
使用测试:
如:使用while循环批量插入数据到表admin中
如:使用leave循环批量插入数据到表admin中
如:使用iterate循环批量插入数据到表admin中