无限 SQL 循环问题
Infinite SQL Loop Issue
这里有超级基本的东西,但我似乎无法停止无限循环。我首先获取计数值并将它们存储到变量中,但是当这不起作用时,我想通过声明数字来测试它们来将其剥离回基础知识。
我已经在网上关注了基本示例,但其中似乎没有任何额外内容,如果这是 0 级内容,我很抱歉。
(我希望 select 语句的结果显示 11 次,但它会永远持续下去)
Declare @bid_loop int = 0
Declare @maxcount2 int = 10
While (@bid_loop <= @maxcount2)
BEGIN
select * from @BranchIDList
END
您需要增加 @bid_loop
:
Declare @bid_loop int = 0;
Declare @maxcount2 int = 10;
While (@bid_loop <= @maxcount2)
BEGIN
select * from @BranchIDList;
SET @bid_loop +=1; -- here
END;
基本上等同于FOR LOOP
(在T-SQL中不可用)。
您也可以使用 GO
:
重写它
count
Is a positive integer. The batch preceding GO will execute the specified number of times.
select * from @BranchIDList;
GO 11
这里有超级基本的东西,但我似乎无法停止无限循环。我首先获取计数值并将它们存储到变量中,但是当这不起作用时,我想通过声明数字来测试它们来将其剥离回基础知识。
我已经在网上关注了基本示例,但其中似乎没有任何额外内容,如果这是 0 级内容,我很抱歉。
(我希望 select 语句的结果显示 11 次,但它会永远持续下去)
Declare @bid_loop int = 0
Declare @maxcount2 int = 10
While (@bid_loop <= @maxcount2)
BEGIN
select * from @BranchIDList
END
您需要增加 @bid_loop
:
Declare @bid_loop int = 0;
Declare @maxcount2 int = 10;
While (@bid_loop <= @maxcount2)
BEGIN
select * from @BranchIDList;
SET @bid_loop +=1; -- here
END;
基本上等同于FOR LOOP
(在T-SQL中不可用)。
您也可以使用 GO
:
count
Is a positive integer. The batch preceding GO will execute the specified number of times.
select * from @BranchIDList;
GO 11