比如表 Test 字段A和B都是Int
A B
1 0
2 1
3 2
4 3
5 4
6 4
7 2
我的想法时再存储过程中查找处符合条件的数据集后,再循环该数据集,进行操作
CREATE PROCEDURE Del_For
@ID int
As
Begin
Select * From Test Where ID>@ID---符合条件的数据
----然后在此逐个取出上面查出来的数据集合中的ID进行操作,该怎么写。
End
GO
Sql2000中存储过程中While的用法
答案:2 悬赏:10
解决时间 2021-11-16 22:56
- 提问者网友:久伴不朽
- 2021-11-16 14:34
最佳答案
- 二级知识专家网友:劳资的心禁止访问
- 2021-11-16 14:46
用游标吧
declare @a int,@b int
declare CCC cursor for select * From Test Where ID>@ID
open CCC
fetch next from CCC into @a,@b
while (@@fetch_status=0)
begin
.......
end
close CCC
declare CCC(这个操作看看别的系统存储过程怎么写的 记不太清了 每次都是copy的)
大概就是这样 不知道语法有没有错误 最近一段时间没用sqlserver了 看看系统存储过程就能明白怎么用cursor了
declare @a int,@b int
declare CCC cursor for select * From Test Where ID>@ID
open CCC
fetch next from CCC into @a,@b
while (@@fetch_status=0)
begin
.......
end
close CCC
declare CCC(这个操作看看别的系统存储过程怎么写的 记不太清了 每次都是copy的)
大概就是这样 不知道语法有没有错误 最近一段时间没用sqlserver了 看看系统存储过程就能明白怎么用cursor了
全部回答
- 1楼网友:孤伤未赏
- 2021-11-16 14:52
同样的格式:
declare @i int
set @i=0
while @i<10
begin
//语句序列
...
set @i=@i+1
end
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯