最近程式設計客棧遇到這樣的問題,在mysql的儲存過程中,游標操作時,需要執行乙個c程式設計客棧onitnue的操作.眾所周知,mysql中的游標迴圈操作常用的有三種,loop,repeat,while.三種迴圈,方式大同小異.以前從沒用過,所以記下來,方便以後查閱.
1.repeat
複製** **如下:
repeat
statements;
until expression
end repeat
demo
declare num int;
declare my_string varchar(255);
repeat
set my_string =concat(my_string,num,',');
set num = num +1;
until num <
end repeat;
2.while
複製** **如下:
while expression do
程式設計客棧statements;
end while
demo
declare num int;
declare my_string varchar(255);
set num =1;
set str ='';
while num < span>10do
set my_string =concat(my_string,num,',');
set num = num +1;
end while;
3.loop(這裡面有非常重要的iterate,le**e)
複製** **如下:
declare num int;
declare str varchar(255);
set num =1;
set my_string ='';
loop_label: loop
if num <10then
le**e loop_label;
endif;
set num = num +1;
if(num mod3)then
iterate loop_label;
else
set my_string =concat(my_string,num,',');
endif;
end loop;
ps:可以這樣理解iterate就是我們程式中常用的contiune,而iterate就是break.當然在mysql儲存過程,需要迴圈結構有個名稱,其他都是一樣的程式設計客棧.
官方的文件-->
本文標題: mysql儲存過程中游標迴圈的跳出和繼續操作示例
本文位址:
通過游標在SQL儲存過程中迴圈
今天有個需求要寫乙個儲存過程,需要從乙個表中讀取資料到另外乙個表中,由於是很多行的資料,所以需要迴圈,我琢磨了一下,使用了游標,至於使用游標的好壞,還請大家指點,先建立兩個測試表吧 create table testa id intidentity userchname nvarchar 50 us...
儲存過程中帶游標
create procedure updatetimeproperty surroundingrock nvarchar 200 ifclassname nvarchar 200 prop startstation nvarchar 200 prop endstatoin nvarchar 200 ...
儲存過程中的游標使用
利用儲存過程來消除資料庫中冗餘的資料 create procedure sp mytest as declare pro varchar 50 declare mm int declare wu cursor for select distinct product from mytest open ...