我有一个存储过程,它从一个表(有大约900个条目)的ID-Column中获取值作为输入来执行所需的操作。是否有一种简单的方法可以通过SQL语句为ID列的所有值执行存储过程(类似于SQL中不存在的for循环)?
感谢提示!
梅尔文
答案 0 :(得分:0)
感谢Martin,
我选择光标版本,它的工作速度足够快:
DECLARE @ProID int
DECLARE position_cursor CURSOR
FOR SELECT ProID FROM MyTable
OPEN position_cursor
FETCH NEXT FROM position_cursor INTO @ProID
WHILE @@FETCH_STATUS = 0
BEGIN
exec MyProcedure @ProID
FETCH NEXT FROM position_cursor INTO @ProID
END
CLOSE position_cursor
DEALLOCATE position_cursor