无限 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