Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Sử dụng REPEAT loop trong MySQL stored procedure

REPEAT loop chạy block SQL lặp lại dựa trên điều kiện. Cú pháp:

REPEAT statements; UNTIL expression END REPEAT

Thực thi statements trước, rồi kiểm tra expression. Nếu FALSE, lặp lại cho đến khi TRUE. Đây là post-test loop (kiểm tra sau).

Ví dụ procedure Repeat_Loop:

mysql> DELIMITER //
mysql> CREATE PROCEDURE Repeat_Loop()
    -> BEGIN
    -> DECLARE A INT;
    -> DECLARE XYZ VARCHAR(50);
    -> SET A = 1;
    -> SET XYZ = '';
    -> REPEAT
    -> SET XYZ = CONCAT(XYZ, A, ',');
    -> SET A = A + 1;
    -> UNTIL A > 10
    -> END REPEAT;
    -> SELECT XYZ;
    -> END //
Query OK, 0 rows affected (0.04 sec)

Gọi procedure:

mysql> DELIMITER ;
mysql> CALL Repeat_Loop();
+-----------------------+
| XYZ                   |
+-----------------------+
| 1,2,3,4,5,6,7,8,9,10, |
+-----------------------+
1 row in set (0.00 sec)