Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Thực hiện vòng lặp while trong SQL Server 2008

Tôi không chắc chắn về DO-WHILE TRONG MS SQL Server 2008 nhưng bạn có thể thay đổi logic vòng lặp WHILE của mình để SỬ DỤNG giống như vòng lặp DO-WHILE.

Ví dụ được lấy từ đây:http://blog.sqlauthority.com/2007/10/24/sql-server-simple-example-of-ised-loop-with-continue-and-break-keywords/

  1. Ví dụ về WHILE Loop

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

    Bộ kết quả:

    1
    2
    3
    4
    5
    
  2. Ví dụ về WHILE Loop với từ khóa BREAK

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

    Bộ kết quả:

    1
    2
    3
    
  3. Ví dụ về Vòng lặp WHILE với các từ khóa CONTINUE và 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
    

    Bộ kết quả:

    1
    2
    3
    4
    5
    

Nhưng hãy cố gắng tránh lặp lại ở cấp độ cơ sở dữ liệu. Tham khảo.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sử dụng biến trong câu lệnh SQL LIKE

  2. Cách hoạt động của câu lệnh IF trong SQL Server

  3. Hiểu Nhóm theo Mệnh đề trong SQL Server - Hướng dẫn SQL Server / TSQL Phần 130

  4. Chèn tất cả các giá trị của một bảng vào một bảng khác trong SQL

  5. varchar (500) có lợi thế hơn so với varchar (8000)?