create procedure test()#申明存储过程
BEGIN #存储过程开始
declare id int(11); #申明ID变量
declare mysort int(11) default 1; #申明排序变量,并初始化1
declare done boolean DEFAULT true; #申明循环变量
#查询ID,并将news_detail_id设置到游标变量中
declare cur CURSOR for select news_detail_id from news_detail ORDER BY create_time;
open cur; #打开游标
while done do #开始循环
fetch cur into id; #获取当前循环中的游标的news_detail_id值并加入到变量ID中
#更新语句
update news_detail set sort_number=mysort where news_detail_id=id;
set mysort=mysort+1; #将排序的变量加1
end while; #结束循环
close cur; #关闭游标
END; #存储过程结束
call test(); #调用存储过程
drop procedure test ; #删除存储过程
Mysql循环查询结果并设置排序编号
最新推荐文章于 2024-07-22 03:54:21 发布