Vòng lặp WHILE (WHILE LOOP) được sử dụng nếu bạn muốn chạy lặp đi lặp lại một đoạn mã khi điều kiện cho trước trả về giá trị là TRUE. Bài viết sẽ hướng dẫn chi tiết cách sử dụng cùng với cú pháp và ví dụ rõ ràng để bạn dễ dàng hình dung hơn về WHILE trong SQL Server.
Cú pháp
Để sử dụng vòng lặp WHILE trong SQL Server, ta sử dụng cú pháp như dưới đây:
WHILE dieukien / * các lệnh cần lặp * / BEGIN {......câu lệnh thực thi khi điều kiện là TRUE......} END;
Ghi chú:
- Sử dụng câu lệnh vòng lặp WHILE khi bạn không chắc chắn về số lần bạn muốn thực thi.
- Vì điều kiện WHILE được đánh giá trước khi vào vòng lặp nên vòng lặp có thể không thực hiện được lần nào (khi dieukien là FALSE thì vòng lặp sẽ kết thúc ngay lập tức).
- Xem thêm câu lệnh BREAK để thoát khỏi vòng lặp WHILE sớm.
- Xem thêm câu lệnh CONTINUE để khởi động lại vòng lặp WHILE từ đầu.
Biểu đồ vòng lặp WHILE
Ví dụ
DECLARE @Number INT = 1 ; DECLARE @Total INT = 0 ; WHILE @Number < = 10 BEGIN SET @Total = @Total + @Number; SET @Number = @Number + 1 ; END PRINT @Total; GO
Trong ví dụ này, vòng lặp sẽ không thực hiện lần nào nếu ngay từ đầu @Number > 10, nó chỉ thực hiện và duy trì khi biến < = 10. Đến khi vượt quá điều kiện (> 10), vòng lặp sẽ kết thúc và tiếp tục thực thi các câu lệnh tiếp theo.
13 Th1 2021
23 Th12 2020
6 Th1 2021
21 Th12 2020
25 Th12 2020
16 Th12 2020