delimiter $$ drop procedure if exists while_loop; create procedure while loop0 begin declare i int default 65: declare R varchar(100); while i< 65+ (1] do if R is null then set R= [21 else set R=CONCAT WSC., R. end if; set i=¡+ 1; end while: select R; end $$ delimiter; call while loop;
时间: 2023-11-28 13:48:59 浏览: 137
mysql存储过程之循环语句(WHILE,REPEAT和LOOP)用法分析
抱歉,您提供的代码有一些错误。我稍微修改了一下,可以尝试执行以下代码:
```
delimiter $$
drop procedure if exists while_loop;
create procedure while_loop()
begin
declare i int default 65;
declare R varchar(100);
while i < 65 + 10 do
if R is null then
set R = '21';
else
set R = CONCAT_WS(',', R, '');
end if;
set i = i + 1;
end while;
select R;
end $$
delimiter ;
call while_loop();
```
这个存储过程的功能是使用 WHILE 循环将字符串 '21' 连接 10 次,每次用逗号隔开,并将结果返回。您可以执行 `call while_loop();` 来查看执行结果。
阅读全文