在SQL Server中,我编写了一个存储过程,我在其中声明了一个类似
的数组declare @arr table (Position int, BTtype varchar(50))
我已根据条件将值插入此数组中,我想检查一下
for each(string type in string array(BT Type))
如何在SQL中检查相同的方式?
例如,我声明一个名为type的局部变量,其数据类型为varchar
,然后如何检查上面在SQL中编写的每个循环........ ??我想知道我们如何在SQL中进行每次迭代?
答案 0 :(得分:0)
DECLARE @Type varchar(50)
DECLARE c CURSOR FOR
SELECT
BType
FROM @arr
OPEN c; FETCH NEXT FROM c INTO @Type
WHILE @@FETCH_STATUS = 0
BEGIN
-- Example
UPDATE @arr SET [Position] = 0
WHERE [BType] = @Type
FETCH NEXT FROM c INTO @Type
END
CLOSE c; DEALLOCATE c;
答案 1 :(得分:0)
您可以在sql中使用while循环进行循环。WHILE循环的示例
DECLARE @intFlag INT
SET @intFlag = 1
WHILE (@intFlag <=5)
BEGIN
PRINT @intFlag
SET @intFlag = @intFlag + 1
END
GO
有关更多示例,请访问此链接。 While loop examples.