有没有办法跳到 SQL SERVER 中 WHILE 循环的末尾?
Is there a way to skip to the end of a WHILE loop in SQL SERVER?
我的代码如下所示:
WHILE @@FETCH_STATUS = 0
BEGIN
IF (@Result = 'S')
-- A lot of code
FETCH NEXT FROM CUR INTO @A
END
CLOSE CUR;
DEALLOCATE CUR;
我意识到我可以使用 BEGIN END 和 ELSE 并将 "lot of code" 放在里面,但是有没有另一种方法可以执行另一个 FETCH 并跳到 WHILE 的末尾?
有 BREAK
and CONTINUE
statements.
你可以说:
WHILE @@FETCH_STATUS = 0
BEGIN
IF (@Result <> 'S')
BEGIN
FETCH NEXT FROM CUR INTO @A;
CONTINUE;
END
-- A lot of code
FETCH NEXT FROM CUR INTO @A
END
CLOSE CUR;
DEALLOCATE CUR;
我的代码如下所示:
WHILE @@FETCH_STATUS = 0
BEGIN
IF (@Result = 'S')
-- A lot of code
FETCH NEXT FROM CUR INTO @A
END
CLOSE CUR;
DEALLOCATE CUR;
我意识到我可以使用 BEGIN END 和 ELSE 并将 "lot of code" 放在里面,但是有没有另一种方法可以执行另一个 FETCH 并跳到 WHILE 的末尾?
有 BREAK
and CONTINUE
statements.
你可以说:
WHILE @@FETCH_STATUS = 0
BEGIN
IF (@Result <> 'S')
BEGIN
FETCH NEXT FROM CUR INTO @A;
CONTINUE;
END
-- A lot of code
FETCH NEXT FROM CUR INTO @A
END
CLOSE CUR;
DEALLOCATE CUR;