00:00
诶好了,那咱们关于这个循环结构啊,咱们就告一段落了啊,这里边儿咱们一共是讲了三种啊,这个大家呢,下来一定要自己亲自的去练一练,写一写,诶否则的话呢,这个你光听个热闹的话呢,看着说哎还挺清楚的,自己写呢,可能就出错了。啊,写一写,然后这块呢,才能够掌握住这个结构,OK,嗯,咱们说了,只要是这个循环结构啊,它一定会有这四个部分,对吧,不管呢,你是Java也好,这个Python也好,这个C语言也好,是吧,都是如此的啊,当然了,大家如果你学过我刚才说的这些语言的话呢,或者说任何一门编程语言,你再学我们这个SQ里边的这个循环结构的话呢,其实上手也会更快一些,主要的区别点呢,就是它这个结构呢,语法结构呢不太一样,但是呢,不管你是这个什么循环结构啊,什么语言里边呢,都是有这四个部分的,你往里边套就行。这里边儿呢,需要大家注意一点呢,就是这个迭代条件呢,经常容易丢啊,你要把这哥们给丢了的话呢,它就是一个死循环了,对吧。因为的话呢,我们是需要这样一个,通常都是这个初始初始化这个条件,然后在这个循环执行完一次以后呢,他去变化一下,变化完以后呢,你再看一下这个循环条件呢,是不是满足,满足了就继续走,不满足了就退出了。
01:04
那这里边呢,就是这个循环迭代条件呢,这个千万不要丢了啊,这是一个另外的话呢,就是我们这个循环条件呢,它是一个,哎,咱们通常呢,就是叫做布尔类型的啊,就是是真的还是假的,呃是true还是false,哎,所以呢,它是一个呃真假这样的一个类型的,那根据呢,你是真的还是假的,我们来决定一下,决定一下呢,到底要不要继续去执行我们这个循环题,那就是这样的一个情况,OK,那么在我们使用这个循环的过程当中啊,咱们可以呢,去使用两个关键字。一个关键字呢,叫做leave啊,Leave一看就是离开的意思是吧,那就意味着就是我们去跳出咱们当前这个循环结构了,那另外一个关键字呢,叫做terrate啊,Terrate呢就是一个啊,这个有的时候呢叫迭代了啊,那其实它的意思呢,那就是我们这里边提到了,说你可以理解成呢,叫做continue的意思,那我们一个一个来说,首先呢,咱们先看一下这个叫live。这个leave的话呢,那我们是使用在这个begin和end当中的,那我们前面呢,其实讲这个loop的时候呢,其实用到过一个在loop里边呢,去使用这个live的。
02:04
啊,应该有点印象啊,而且呢,我们上面这也提到了,如果说你要是用这个live或者这个的话呢,我们循环结构里边需要去加上这个名称。啊,需要去加上这个名称啊,这个要注意一下。好,这呢是我们说的这个点,然后这块呢,关于live的话呢,它这有个叫标签名,就表示呢,你要离开的是哪一个标签啊,就相当于整个这个结构呢,就给推出了,那我们可以在这个循环结构当中去使用live,那能在其他结构中去使用嘛,那其实呢,我们说在这个begin end当中呢,也可以去使用的,就是你如果不是个循环也行,表示呢就直接结束我们当前整个这个算是叫存储过程的这个体,或者呢叫存储函数的这个体。哎,就这个意思。好的,那下边的话呢,咱们就看一下这个具体的例题了,咱们通过这个两个例子呢,来给大家呢,再说一下这个例的一个使用,OK,那首先呢,我们把这个呢题目CTRLC一下咱们粘过来。那这呢是咱们讲的这个5.1吧,诶关于这个叫a live的一个使用。
03:04
好,这个呢,因为体面比较长,我们用一个这个多行的这个注释呢,给它包起来。好了,这就可以了,下边的话呢,我们看一下该如何呢,去体现它的一个应用,那首先的话呢,也是涉及到一个存储过程,所以呢,还是老的这个套。这个写这个单词大家写透了没有。啊,这个这两张的话全是这个单词是吧,每当我们造一个。存储过程或者存储函数的时候呢,都需要啊,还有这个create啊,写的频率是最高的,对吧。嗯,因为我们前面创建表啊,创建这个,呃,比如说视图啊,都是用的create。创建一个procedure。OK,这叫leave,那咱们leave的谁呢?咱们leave的是这个begin结构,就是我们下边呢要写的这个begin就它。然后呢,这个N的结束是吧。好了,那我们看这块儿该怎么去写。这块呢,说声明一个in的类型的,In的参数叫做number啊,我们这里边呢,去写是个in类型的,然后是个number,是一个int,就这样说给这个begin和end呢,去加一个标签名,是不是给这个begin呢,前面加一个这个标签名啊,那我们可以写一个呢,叫做比如叫a begin的一个label。
04:13
那就这样。啊,Begin的一个labor。啊,并在这个我们回车一下,并在这个begin end中呢,去使用这个if语句呢,去判断这个number参数的这个值。那使用这个if语句啊,去判断我们这个number这个值,OK,嗯,就是我们这个number这个值,如果这个number这个值呢是小于零的,那我们小于点零的,哎,我们就使用它呢,去退出我们这个begin n了,然后如果是这个如果这个如果这个啊就相当于我们这块呢,是不是就接着需要做这个判断了,好,首先的话呢,如果我们的number呢,是小于等于零的。啊,然后呢,下边是不是就正了。哎,我们就then干什么呢?就退出咱们当前这个begin n的这样一个结构,那我们这块呢,就是一个leave leave谁呢?哎,把我们这个标签呢,咱们写到这儿。表示的就推出这个结构好,然后接着的话呢,它这是一个多选E,所以我们就else if了是吧,这个注意它是一个单词啊呃,If呢,跟前面这个是挨在一起的。
05:07
这个呢是叫number呢,等于一。那么等于一的时候呢,怎么着呢,我们算一下说呢,叫查询员工表中的这个平均薪资啊,我们就select一下。Avg的。Salary from一下我们这个employees。哎,没有问题是吧,好,然后再再者呢,就l if说这number等于一个二的时候,然后再去。Select什么呢?我们他的最低工资啊,Mean的一个salary。哎,From一下employees,哎,OK,然后呢,如果你要是大于二的话呢,查询它的这个最高工资,哎,大于二的话呢,查询最高工资,那其实呢,我们就相当于是个else了,对吧,那我们就是哎,Select。Max。这个salary。From一下啊,Employees。
06:00
OK的是吧,行,那这个完了以后呢,最后我们是不是结束一下咱们整个这个if结构吧,哎,没问题,然后说这个if语句结束以后呢,再去查询一下这个员工表当中的这个总人数,哦,还多一个需求,那其实呢,是不是就在这个位置去查询啊。那查询总人数。哎,那我们就直接写啊,Select,我们叫count。行。From一下这个employees。没有问题吧,好,那么至此的话呢,咱们把整个这个结构呢就写完了,那我们在这里边相当于用了leaf,这个lef的话呢,我们看到了,不一定非得要用在这个循环结构当中,我们呢,还可以去结束咱们整个这个这个叫存储过程体是吧?好,那这块呢,我们选中呢做一个执行。嗯,这就可以了,然后呢,我们下边呢,做一个调用。做个调用,OK,调用的话呢,我们直接呢,就通过这个call啊,我们就调用一下叫做live这个begin,好,这里边呢,我们需要传具体这个值了,这个值的话呢,我写一个这个啊写一个零吧,这块呢,相当于是啊写零就直接就结束了,对吧?啊结束一下我们当前这个整体的结构,那就不会有各种各样的输出语句来。
07:08
这个是结束我们这个比begin了,这个是不是也不会输出了,没有问题啊,就整个跳出我们这个结构了,相当于这时候呢,是不是啥也没有,哎,我们走起。啊查询啊,什么也没有是吧,好这块我们写个一啊走起一的话呢,查的是我们的平均工资啊走起啊这个你看平均工资就出来了。那有同学会说说,哎老师不对吧,这个平均工资呢,出来之后呢,我们这个位置怎么没有出来呢,咱们是不是说呢,不管你这个if辅结构走哪个,然后我们这个呢,是不是一定要执行的一个语句啊。那确实没有出来原因是什么呢?啊原因呢,其实不是我们这个代码写的有问题,而是咱们这个,呃,这个叫什么SQL要的一个问题啊,所以我们这块呢,用这个命令行呢,咱们去跑一下。啊,Mexico-u root是吧,杠P啊这个换行吧,ABC123。啊,密码写错了。好,那么进来之后的话呢,我们还是在咱们这个DB t16里边啊,我去use一下。
08:01
没问题是吧,然后呢,咱们,诶我这块把咱们这个操作呢,我CTRLC一下那粘过来,然后放在这儿,然后走起。来大家看啊,走起,诶你看这呢,是咱们刚才查到这个叫平均工资这块呢,是不是就查到这个count了。哎,这个是没有问题的啊,只不过呢,是我们这个so要它的一个显示的问题啊,这块大家注意一下就行好,那这块呢,比如说你再去输入一个二。啊诶把这个呢,我们改成是一个二,然后再都齐啊这块呢,查询到的是叫mean salary啊,你也可以再去测其他的啊都可以了,行,这个呢我就不去测了,那通过这个呢,大家去体会一下我们这个live的一个使用啊,Live的一个使用好了这呢是我们举的其中的一个例子啊,咱们再来一个例子。说这个啊,CTRLC一下。好,回过来。这个呢,是这个A距离二啊。那这个呢,又稍微有点长。哎,换行一下。好这块的话呢,这个经济呢,又又不景气了,是吧,啊又得呢,给大家去降薪了,环境不好的时候呢,降薪,然后呢,定义这样的一个,呃,这个存储过程,OK,还是咱们把整体的整体这个结构呢,我们先搭建出来。
09:18
Procedure。那这个呢,我们就要leave这个well是吧。哎,CTRLCCTRLV。哎,这么着,嗯,这里边呢,先把这个先写出来吧,Begin,然后最后一个end是吧。这里边儿呢,是一个out型的参数,叫number。Al类型的一个叫number,叫输出循环的次数,那所以它还是个int类型的。嗯,存储过程中呢,使用这个well呢,循环给大家,呃,降低薪资为原来的90%,直到呢,公司平均薪资呢,小于这个1万的时候啊,小减1万的时候呢,我们统计一下这个次数,跟咱们上边整体这个思路呢,其实是比较接近的,咱们前面不都练了好多这个关于循环结构的问题嘛,是吧,所以这块我就直接开始写了,首先的话呢,我们需要呢去定义这个变量。
10:02
那首先这个变量呢,我们去来来记录一下咱们的这个平均工资是吧,你不是要考虑平均工资呢,大于小于谁的问题吗。啊,这个变量的话呢,是一个W型的。记录。平均工资。好,然后接着我们再去做一个这个declare这块呢,我们来去计算一下这个叫这个循环的这个次数,那我写一个叫well的一个count。呃,Int类型的啊,这呢,我们来一个default。啊,默认值呢,是个零对吧,来记录循环的次数。啊行,然后接下来的话呢,我们这算是一个循环中的一个这个初始化条件了,我们就可以去select。哎,我们叫avg的一个salary。跟我们上边写的那个,其实整体上类似。这个into到我们avg的啊,这个SC中,咱们现在再写一遍啊,然后from一下这个employees。Lo的意思,好,这个呢就没有问题了,这呢叫做这个初始化条件,然后呢,这里边提到了,咱们是用一些这个while循环去做啊,用下这个while循环去实现,呃,那well去实现的话呢,诶通过这呢,我们想强调的点呢,就是可以在呃任何的这个循环结构当中,Well啊,Loop呀,或者repeat呀,里边我们去使用一下这个live啊。
11:21
那这块呢,我们要是去使用的话呢,Well,咱们这块呢,是不是写个东西,然后叫do,然后里边呢进去最后呢,我们再去摁一下咱们整体的一个well,是不是我们整体结构呢,是长这个样子吧。应该有个印象是吧,好,那这块的话呢,我们这个怎么去写呢?哎,注意咱们现在呢,它的循环的话,咱们说是一定要结束的,否则就是死循环了啊前面呢,咱们讲循环的时候呢,这个位置呢,是一个呃,咱们叫做循环条件。啊,就是某些情况下的满足,某些情况就不满足,它是有可能变成假的。啊,往前咱们调一下。啊,往前调一下,你看这块啊,咱们写这个while的时候呢,你看它是不是一个这样的条件,就是走着走着,哎,他这个条件呢,相当于就不满足了,对吧?哎,那我们就退出循环,言外之意呢,就是我们退出循环这个事儿就以外为例,它呢,呃是基于这个条件不满足退出的。
12:11
而我们现在希望呢,是不是里边呢,满足某个情况的时候呢,我们是执行这个利物这个操作吧,哎,通过利用的退出的,那这个位置的话呢,就相当于不作为我们退出的情况了,那咱们这块怎么写呀。啊,这块大家可能没有见过的。没有见过的,当然了,你要是接触过这个Java语言的话呢,就比较清楚了,我们这儿呢叫well。相当于呢,我们不在这个循环条件位置呢,去做这个设置啊,就不做这个设置好度什么,然后在这里边儿呢,我们说满足某个条件情况下呢,咱们去利用一下这个循环结构,那哪个循环结构啊这块呢,是不是又得是给我们一个标签啊。不妨呢,我叫的一个labor。哎,就这么着。那所以说呢,咱们强调一下,就是关于循环结构当中,我们要包括呢,上面咱们说的begin n哈,咱们要是想leave某一个结构的话呢,通常给这个结构呢,我们要加个标签,就表示呢,我要跳出这个b begin n的结构了,还是要跳出我们这个呃,While的这个循环这个结构了。
13:07
哎,就是这样的一个意思,好了,那我们进来,进来以后的话呢,一旦你这块是处,相当于我们这块呢,取了一个,哎,这叫什么平均的一个工资是吧?取到平均工资之后呢,我们下边要干什么呢?咱们去判断一下呗。说如果呢,你这个平均的这个工资。嗯,咱们是,嗯,直到全公司的平均工资呢,小于等于1万,我们就呃,相当于是就退出了是吧,这个咱们是降薪的啊哎,小于等于1万。那小于等于1万的时候呢,我们相当于就退出了啊,那这块呢,就是一个Z呗,啊干什么呀,我们是叫leave一下当前的这个循环结构吧。哎,就是它。啊,然后这块呢,我们去摁一下这个if啊if好这个没有问题吧,好相当于的话呢,我们一上来呢,先获取一下这个平均工资,看一下这个平均工资是不是一上来咱们还没有操作的时候呢,它就小于等于万了,如果这个呢是满足的,那相当于直接就退出了。
14:00
对吧,直接就退出了啊,咱们这个默认值是零,那退出循环以后的话呢,你这块呢,在诶是不是有一个这个哎,赋值的一个操作给咱们这个行参啊,咱叫number。Set your number就等于你这个,哎,是不是这个well can't呀。那如果呢,你一进来这个工资呢,平均工资呢,它就小于1万,小于等于1万了,那我们直接呢,这个就是零付给他了。OK的是吧,好,那如果说呢,一进来的时候呢,它不是满足这个条件的,那我们是不是就走到这儿来了,那走到这儿来干什么呀,我们是不是就要做这个update的这个操作了,这就相当于我们这个循环体的。啊,这个循环体update呢,Employees哎,然后呢,我们去set一下这个。嗯,公司呢,让他们降为原来的。哎,加为原来的90%啊,塞德三呢,等于啊,原有的S呢,再乘以一个0.9是吧。嗯,OK,那这呢就相当我们做了一个降薪啊,降薪完以后的话呢,我们是不是还得再获取一些这员工的一个平均工资啊,诶我们再CTRL试一下,这就相当于我们的迭代条件了。
15:04
啊,同时的话呢,咱们还得是不是记录一下你这个呃,循环的次数啊,然后在这一下我们去算一下它呢,就等于它再加上一个一没问题吧,好这块我再标注一下,它呢,相当于叫初始化条件啊,我写个这样的一啊。哎,这个呢叫初始化条件,那么循环条件呢,哎,其实这块呢,哎还是理解成我们叫循环条件,只不过这个循环条件呢,我们这张写的叫well处了啊,这个处呢,也可以理解成它就是循环条件啊,这是第二个。诶,条件。然后呢,在这里边的话呢,哎,我们进去之后,哎,然后这块呢,就相当于是一顿执行啊,然后这块的话呢,其实咱们都可以理解成它叫循环体啊。啊,这就是这个循环体部分,然后最后这块呢,我们称为呢,这个叫迭代条件。
16:03
啊,迭代条件就是这块我们再重新的呢,哎,把这个变量的值记录一下,然后再回过去是吧,那相当于我们这个循环结构的结束呢,不是依据这个循环条件结束的,而是呢,依据于你循环体里边呢,有一个live这个结构叫退出,当跳出当前循环,这个呢,诶如果大家你学习过Java的话呢,哎,其实类似于Java里边呢,叫break啊跳出当前循环结构的意思。嗯,行了是吧,这个呢,我们就完事了啊来我们这时候呢,整体选中啊,从这到这啊走起。好了,这时候我们就执行完毕,那首先的话呢,我们先去这个select avg啊,咱们先查看一下当前员工的这个叫平均薪资。哎,这个我们选中啊,咱们查询一下啊,这时候16000多啊,咱们希望呢,它达到这个1万以下,好下边呢,我们去调用一下。啊,这个我们。哎,调用一下它是吧,诶CTRLC。里边呢,我们传一个这个number吧。
17:03
哎,Select一下,嗯,这个时候我们哎哎不用小括号了啊。诶,这样是不是就可以了,好,那这时候我们去做一个执行啊,走起哎六,那下面于我们是不是六次的话呢,就降低到这个1万以下了,那这时候我们看看到底这个员工的平均工资是多少,9028啊。相当于呢,就是在这个1万以下。啊,OK,这时候就没问题了啊,那如果说我们现在要再去执行呢。啊,再一执行走起,诶是不是就零了啊,因为这时候已经是1万以下了,相当于你这块获取平均工资呢,这就是1万以下的一进来的时候呢,这块呢,呃,已经是小于1万了,是不是直接呢,就哎跳出我们当前这个循环结构来。啊,跳出循环结构以后呢,然后这块呢,把你上面那个零。来付给我们这个number,哎,所以这块呢,这就是个零,诶OK没有问题啊行,那这样的话呢,咱们就给大家呢,熟悉一下这个叫什么呀,Leave的一个使用。啊,能行吧,哎,力的一个使用啊。好,那leave呢,咱们就说到这儿啊,嗯,需要注意的就是leave后边呢,咱们一定要加个标签。
18:06
对吧,一定要加个标签,那就意味着你不管是循环呀,还是这个,呃,Begin end呀,你得在你这个结构前面,你得整个标签,然后呢,我就再退出你。啊,就是这个意思,OK,然后呢,咱们再来看一下,这叫。这个ter的话呢,它是只能够在这个循环条件当中去使用啊,循环语句中去使用的,它只能在循环当中用。OK啊,那理解成什么呀,叫表示呢,叫重新开始循环。啊,如果呢,你要有面向对呃,面向对象或者面向过程这个辩论经验的话呢,把它理解成叫continue,叫再次循环的意思。那比如说学习过Java的同学呢,这个肯定用的,哎,就知道我们开始下一次循环,哎,开始下一次循环,嗯,我先大概写一个这个场景哈,你比如说我们说这个while吧,这是一个循环条件啊,然后接着我们是这个do是吧。最后呢,是不是这个N的一个啊。然后在这里边儿呢,咱们写的是啥呀,是不是叫循环体。
19:04
还有呢,叫迭代条件呀。对吧,哎这个意思好,那么这特什么情况呢?比如我们进来之后呢,哎,咱们这个,哎嗯,我就怎么着来说吧。啊,以这个循环体就是大体上来说一下啊,进来之后的话呢,我们这个代码呢,正常应该是往下执行,执行完以后的话呢,我们回过来是不是接着呢,去判断一下我们这个循环条件满足的话呢,是不是再进行执行,意思这样。啊,知道什么呢,知道可能是这个不满足了,哎,我们退出的。啊,当然我们这个还说个live的方式啊,假设我们这块没有live了啊,就他推出的,然后现在呢,在这里边执行的过程当中啊,比如说这一行这一行这一行往下走着呢,如果呢,我们比如说有一个if语句,哎,满足这个if语句的话呢,哎,他就进去了,他一进去的话呢。哎,这个这个整个呢,相当于是我们这个if的这个结构啊。一进去的时候呢,呃,它里边呢,有一个叫E。啊,这个时候eter,呃执行呃,就是如果呢,你要是没有走这个的话呢,整个呢,我们说这个是if l if的结构,这个执行完以后呢,这个代码是不是还会执行到这儿啊。
20:07
对吧,哎,这个代码还会执行到这儿,因为这呢,你你是if else结构完了以后呢,正常会走这儿,但是如果说呢,我们在这个if里边呢,有一个E。而且呢,我们这个条件呢还满足了,那么执行到这个推的时候呢,怎么办呀,他就直接呢开始下一次循环了啊,就直接呢,又跑到我们这个位置呢,继续重新来往下走,那就意味着我们刚才的这两行代码呢,它就执行不到了。那就执行不到了啊,是这个意思。OK,行,可能大家呢,觉得稍微有点抽象,那下边这块呢,我们来举这个例子。呃,在这个to呢,就是continue啊,Continue什么呢?诶就是你指定的那个循环,所以这个呢,Labor呢,就指定相应那个循环的那个名,那比如我们这个用loop的话,那就loop的这个名,对吧?诶continuedor就是它啊这个意思。好,那这块呢,我们拿这个例子呢,来进行一个说明啊,CTRLCL一下。
21:00
这个是5.1是吧。好,接着啊。嗯。好,5.2,咱们来说一下这个eter。它的一个使用。哎,这么着。好看一下,说这块呢,我们定义一个局部变量啊,叫做number啊,初始值为零啊,这个咱们先把这个整个结构呢先搭起来。Create a。这个呢,我们是test一下啊eter这个首先这个单词呢,你得会写啊,啊这样写。然后这个begin。哎,结束是吧,好an这块错了啊,这么着。然后呢,这块呢,定义一个局部变量啊,那我们在这块呢,去declare一下,嗯,这个呢,我们叫一个number是吧,初始值为零,那就是一个类型的default。
22:09
哎,零没有问题。下面呢,提到说这个循环结构当中去执行这个number加一的一个操作,那循环结构呢,比如我们,诶好,那咱们就用这个loop吧。哎,我用这个loop来实现啊,这个loop呢,诶你这块呢一顿写,然后最后的话呢,是不是要结束一下,我们这叫哎loop是吧?哎这样一个情况,然后呢,我们在loop里边干什么事儿呢?去判断一下这个,呃,Number这个值啊,当然判断之前呢,它涉及到初始值是零,它得有一个加一的操作了,所以进去之后呢,我们首先呢,对它进行一个赋值操作。啊,那我们就set一下这个number,等于是不是number加上一个一啊,这呢就是相当于是这个循环体了啊。然后呢,接下来的话呢,我们去判断一下你这个number呢,是不是小于十。哎,那这块我们就来一幅吧。哎,咱们还讲过那个case when then是吧,哎,大家你也可以去练一下啊,哎,也可以去练一下,然后这个if的话呢,我这就用if了,哎,如果我们这个number呢,它是小于十的。
23:07
啊,怎么着呢,则继续执行循环啊,那就意味着我们此时呢,就then,那是不是就是所谓的一个继续的意思,咱们叫。是吧,谁呀,哎,那这时候呢,你得告诉我这个循环结构是什么,比如我这呢,我就来一个哎,Look的一个。Labor就他。哎,就他啊,哎这块呢,注意一下,咱们讲look的时候没说这块有一个冒号啊,这块有冒号啊好,那这块我们CTRLC一下,哎,Thenter就是一个他。啊,就相当于我们继续呢,让他去执行我们这个结构。好,然后这块呢,是if,那else if。啊,如果呢,你是叫大于15啊,那就我们这个number呢,是大于15的,那怎么办呀。我们呢,就哎退出当前循环哦,这还退出循环了,那我们是不是就要leave一下咱们这个,呃,Lo labor。
24:01
没问题吧,好这块呢,我们接着呢,去摁一下咱们当前这个if结构。这个结构呢,大家清楚吧。哎,说啊清楚啊,你确定你清楚吗?啊,你看我这里边儿特意写了这样个情况,什么意思啊,If else if,我竟然没有else。是吧,我直接在直接摁这个if了。是可以的。哎,注意是可以的。啊,这个呢,哎,我们说一下,就是咱们说过这个if的话呢,哎,这个你是一种情况,然后else啊if是吧,然后最后呢else if可能有多个,然后最后呢一个else,那实际上的话呢,你说我们这个要多选一,那就大不了你最后走的else呗,那实际情况的话,你可以这几个呢都判断了,最后呢,这个else呢是可以没有的。那就只有前面几个,就是说你要满足前边这几个某一个情况呢,我们就执行,如果不满足呢,那就直接就结束了。哎,不一定非得要有else啊,你看我这个呢,是不是就没有啊。啊就OK,没有啊行,呃,那么这个结构呢,我们算是就完事了,呃,然后呢,为了显示这个效果更好一点呢,我这块呢,我写一句话啊。
25:02
然后咱们做一个分析啊,Select,我就说了一句话。嗯,这个来一个广告吧,常规谷我们说呢,哎,让天下。还没有,哎,难学的这个技术。这么着啊。好来咱们这块呢,做一个分析啊,那我这里边儿呢,定义这个变量的值呢,默认呢,它是一个零。然后呢,进来以后呢,我们先把这个值呢,是不是变成一了呀,那一呢,你是不是小于十啊,哎,小于十好是不是就进到这了,一进到这的话呢,你注意咱们这是你这个,呃,所谓的if else结构,然后咱们这块呢,直接就是不是就continue了,我就要continue了,或者你叫E了,它就直接呢,就翻到我们这个循环又从头开始过来了。言外之意呢,就是你看我们里边的这句话有没有执行啊。哎,没有是吧,因为它直接就翻上去就执行了,哎哎,一上去执行以后呢,是不是就加个一啊,哎,刚才呢,我们是进来以后呢,变成一了,然后再加一变成二了,然后二呢又小于十又回去了,走走走走走走走,诶直到呢现在我们这个谁呀,那么呢,变成了九的话呢,九小于十还得进去变成十了。
26:10
Number现在已经是十了,然后呢,If number小于十不满足了,这个呢,大于15嘛,也不大于我们这个呢,就结束了,相当于我们number是十的时候。我这时候这句话是不是会输出一次,这个输出完以后呢,整个这块呢,不都在我们这个循环的这个体当中吗。哎,在我们学那个结构当中,对吧,然后你下边这个number呢,是不是又加个一变成11了呀,11的话呢,第一个也没进去,第二也没进去,是不是又输入一次,然后呢,A一再接着又输入一次,然后又输入一次,等我们这个number呢。变成15的时候啊,15了,这个也没进去,这个呢也没进去,是不是又输出一次,然后变再走变成16了,呃,16的时候呢,我们这个number大于16嘛,满足跳出我们这个循环结构就出去了。啊,这是我们整个呢,是这样的一个过程,哎,大家体会一下这个E它的一个作用,好,那这时候我们把它呢,整体选中,哎,咱们走一下。
27:05
啊OK啦,然后这块呢,我们去做一个这个调用啊,我叫一个call。那咱叫test。Deter。哎,这样子。诶,这样子是吧。嗯,好了啊,这块呢,我们这块选中做一个执行。哎,你看这呢,就输出一个啊,这呢还是因为咱们这个四库要的问题啊,但是回到这个位置上。然后这块诶走起,诶你过来哈。把它呢,再CTRLC一下。哎,这样,哎透气好,这时候你大家你会发现呢,是不是我们这块呢,就执行了好多次啊。哎,这了好多次啊,哎,第一个呢,是你这个number相当于是十的时候的意思啊,十一十二十三。14,哎是不是15了,然后再来一下就16了,16的时候呢,直接我们就六了,就跳出了是吧?哎,就我们这个场景啊行,那这呢,咱们把这个A呢,咱们就说清楚了。
28:03
好,那至此的话呢,咱们关于在呃,稍微小结一下啊,在循环结构当中呢,可以使用这两。而且呢,这个呢,只能使用在循环当中,Live的话呢,可以去结束我们这个存储过程或者存储函数这个题就是begin in呢,可以给它结束的,它的使用范围上要稍微大一点,这两个要应用的话呢,我们说都得是使用这种带标签的这种场景。是吧,哎,三种循环哎都可以省略名称,就是我们所谓的标签,但是如果循环中添加了循环控制语句,就这俩的时候呢,就必须呢添加这个label,哎,咱们刚才呢,是不是进一步的去验证了这个事儿,是吧。好的,那么关于整个流程控制结构啊,咱们就到这儿。
我来说两句