MySQL存储过程中游标循环的跳出和继续操作示例
最近遇到这样的问题,在MySQL的存储过程中,游标操作时,需要执行一个conitnue的操作.众所周知,MySQL中的游标循环操作常用的有三种,LOOP,REPEAT,WHILE.三种循环,方式大同小异.以前从没用过,所以记下来,方便以后查阅.
1.REPEAT
REPEAT Statements; UNTILexpression ENDREPEAT demo DECLAREnumINT; DECLAREmy_string VARCHAR(255); REPEAT SET my_string=CONCAT(my_string,num,','); SET num=num+1; UNTILnum<5 ENDREPEAT;
2.WHILE
WHILEexpressionDO Statements; ENDWHILE demo DECLAREnumINT; DECLAREmy_string VARCHAR(255); SETnum=1; SETstr=''; WHILEnum <span>10DO SET my_string=CONCAT(my_string,num,','); SET num=num+1; ENDWHILE;
3.LOOP(这里面有非常重要的ITERATE,LEAVE)
DECLAREnum INT;
DECLAREstr VARCHAR(255);
SETnum=1;
SETmy_string='';
loop_label: LOOP
IF num<10THEN
LEAVE loop_label;
ENDIF;
SET num=num+1;
IF(nummod3)THEN
ITERATE loop_label;
ELSE
SET my_string=CONCAT(my_string,num,',');
ENDIF;
ENDLOOP;
PS:可以这样理解ITERATE就是我们程序中常用的contiune,而ITERATE就是break.当然在MySQL存储过程,需要循环结构有个名称,其他都是一样的.
官方的文档-->http://dev.mysql.com/doc/refman/5.0/en/loop.html
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下