大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
用递归吧,不过我不会用MySQL的语法,应该跟SQL server差不多吧
成都创新互联公司是一家专注于成都网站制作、成都网站建设与策划设计,义安网站建设哪家好?成都创新互联公司做网站,专注于网站建设十余年,网设计领域的专业建站公司;建站业务涵盖:义安等地区。义安做网站价格咨询:028-86922220
1.录入基础数据
2.执行语句与结果
declare storeId varchar(10);
在存储过程中创建游标,这个游标里面存了你所有要循环的数据,集合:
declare diy_cursor cursor for
select store_id from t_b_store;
open diy_cursor;--打开游标
diy_loop:loop ---这里开始循环
FETCH diy_cursor into storeId; --提取本次循环的数据,保存在storeId中
if done = 1 then --done是在存储过程开始的时候定义的一个整形变量
leave diy_loop;---如果游标中的数据提取完毕,就自动跳出这个循环end if;
----在这里用你循环取到的storeId做你想做的事情,就是写你的sql啦---
end loop; --循环结束
close diy_loop; --关闭游标
delimiter $$// 定义结束符为 $$
drop procedure if exists wk; // 删除 已有的 存储过程
create procedure wk()// 创建新的存储过程
begin
declare i int;// 变量声明
set i = 1;
while i 11 do // 循环体
insert into user_profile (uid) values (i);
set i = i +1;
end while;
end $$ // 结束定义语句
// 调用
delimiter ;// 先把结束符 回复为;
call wk();
delimter : mysql 默认的 delimiter是; 告诉mysql解释器,该段命令是否已经结束了,mysql是否可以执行了。
delimiter $$
mysql
mysql CREATE PROCEDURE myProc() //创建while循环的存储过程 if分支语句示例
- BEGIN
-
- DECLARE i int;
- SET i=1;
- loop1: WHILE i=10 DO
- IF MOD(i,2)0 THEN /*Even number - try again*/
- SELECT CONCAT(i," is an odd number");
- END IF;
- SET i=i+1;
- END WHILE loop1;
- END$$
Query OK, 0 rows affected (0.00 sec)
这种也可以
mysql循环的第一种方法 。
mysql 循环第二种用法 。
mysql 循环第三种用法。
跟这里写的一样,就是他这个缺少符号。别的已经验证通过