您好,欢迎访问一九零五行业门户网

mysql procedure存储过程循环,条件判断范例

mysql procedure存储过程循环,条件判断实例 本文转载自: http://www.111cn.net/database/mysql/38878.htm ? ? mysql教程 procedure存储过程循环,条件判断实例 ? mysql delimiter $$ mysql create procedure myproc() ? - deterministic ? - begin ?
mysql procedure存储过程循环,条件判断实例
本文转载自: http://www.111cn.net/database/mysql/38878.htm
?
?
mysql教程 procedure存储过程循环,条件判断实例
?
mysql> delimiter $$
mysql> create procedure myproc()
? -> deterministic
? -> begin
? -> declare counter int default 0;
? ->
? -> simple_loop: loop
? -> set counter=counter+1;
? -> select counter;
? -> if counter=10 then
? ->? leave simple_loop;
? -> end if;
? -> end loop simple_loop;
? -> select 'i can count to 10';
? -> end$$
query ok, 0 rows affected (0.00 sec)
mysql>
mysql> delimiter ;
mysql>
mysql> call myproc();
+---------+
| counter |
+---------+
| 1 |
+---------+
1 row in set (0.00 sec)
+---------+
| counter |
+---------+
| 2 |
+---------+
1 row in set (0.02 sec)
+---------+
| counter |
+---------+
| 3 |
+---------+
1 row in set (0.02 sec)
+---------+
| counter |
+---------+
| 4 |
+---------+
1 row in set (0.02 sec)
+---------+
| counter |
+---------+
| 5 |
+---------+
1 row in set (0.02 sec)
+---------+
| counter |
+---------+
| 6 |
+---------+
1 row in set (0.02 sec)
+---------+
| counter |
+---------+
| 7 |
+---------+
1 row in set (0.02 sec)
+---------+
| counter |
+---------+
| 8 |
+---------+
1 row in set (0.02 sec)
+---------+
| counter |
+---------+
| 9 |
+---------+
1 row in set (0.33 sec)
+---------+
| counter |
+---------+
|? 10 |
+---------+
1 row in set (0.33 sec)
+-------------------+
| i can count to 10 |
+-------------------+
| i can count to 10 |
+-------------------+
1 row in set (0.33 sec)
query ok, 0 rows affected (0.33 sec)
实例二
mysql> create procedure myproc()
? -> begin
? -> declare i int;
? -> set i=1;
? -> myloop: loop
? ->? set i=i+1;
? ->? if i=10 then
? -> leave myloop;
? ->? end if;
? -> end loop myloop;
? -> select 'i can count to 10';
? ->
? -> end$$
query ok, 0 rows affected (0.00 sec)
mysql>
mysql> delimiter ;
mysql>
mysql> call myproc();
+-------------------+
| i can count to 10 |
+-------------------+
| i can count to 10 |
+-------------------+
1 row in set (0.00 sec)
query ok, 0 rows affected (0.00 sec
带有条件
mysql> create procedure increment (in in_count int)
? -> begin
? -> declare count int default 0;
? ->
? -> increment: loop
? -> set count = count + 1;
? -> if count ? -> iterate increment;
? -> end if;
? -> if count > in_count then
? -> leave increment;
? -> end if;
? -> end loop increment;
? -> select count;
? -> end
? -> //
query ok, 0 rows affected (0.00 sec)
mysql>
mysql> delimiter ;
mysql> call increment(3);
+-------+
| count |
+-------+
|? 20 |
+-------+
1 row in set (0.00 sec)
query ok, 0 rows affected (0.00 sec)
?
?
?
?
?
其它类似信息

推荐信息