Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Направете while цикъл в SQL Server 2008

Не съм сигурен за DO-WHILE в MS SQL Server 2008, но можете да промените логиката на цикъла си WHILE, така че да се ИЗПОЛЗВА като цикъл DO-WHILE.

Примерите са взети от тук:http://blog.sqlauthority.com/2007/10/24/sql-server-simple-example-of-while-loop-with-continue-and-break-keywords/

  1. Пример за цикъл WHILE

    DECLARE @intFlag INT
    SET @intFlag = 1
    WHILE (@intFlag <=5)
    BEGIN
        PRINT @intFlag
        SET @intFlag = @intFlag + 1
    END
    GO
    

    Резултати:

    1
    2
    3
    4
    5
    
  2. Пример за цикъл WHILE с ключова дума BREAK

    DECLARE @intFlag INT
    SET @intFlag = 1
    WHILE (@intFlag <=5)
    BEGIN
        PRINT @intFlag
        SET @intFlag = @intFlag + 1
        IF @intFlag = 4
            BREAK;
    END
    GO
    

    Резултати:

    1
    2
    3
    
  3. Пример за цикъл WHILE с ключови думи CONTINUE и BREAK

    DECLARE @intFlag INT
    SET @intFlag = 1
    WHILE (@intFlag <=5)
    BEGIN
        PRINT @intFlag
        SET @intFlag = @intFlag + 1
        CONTINUE;
        IF @intFlag = 4 -- This will never executed
            BREAK;
    END
    GO
    

    Резултати:

    1
    2
    3
    4
    5
    

Но опитайте даизбягвате примки на ниво база данни.Справка.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да получите низ за връзка от база данни

  2. Изчислете броя на записите за всяка дата между 2 дати

  3. Oracle:има ли инструмент за проследяване на заявки, като Profiler за sql сървър?

  4. Параметър Sniffing (или Spoofing) в SQL Server

  5. Промяна на потребителски дефиниран тип в SQL Server