有没有办法跳到 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;