首頁  >  文章  >  資料庫  >  MySQL LOOP語句如何在預存程序中使用?

MySQL LOOP語句如何在預存程序中使用?

WBOY
WBOY轉載
2023-08-26 19:13:101252瀏覽

MySQL LOOP语句如何在存储过程中使用?

MySQL 為我們提供了一個 LOOP 語句,它可以重複執行程式碼區塊,並增加了使用循環標籤的靈活性。我們有以下兩個語句可以讓我們控制循環-

LEAVE 語句

它允許我們立即退出循環而無需等待檢查

迭代語句

它允許我們跳過其下的整個程式碼並開始新的迭代。

示範使用有預存程序的LOOP語句,以下是一個預存程序,它建構一個有偶數的字串,如2、4、6、8等。 -

mysql> Delimiter //
mysql> CREATE PROCEDURE LOOP_loop()
    -> BEGIN
    -> DECLARE A INT;
    -> DECLARE XYZ VARCHAR(255);
    -> SET A = 1;
    -> SET XYZ = '';
    -> loop_label: LOOP
    -> IF A > 10 THEN
    -> LEAVE loop_label;
    -> END IF;
    -> SET A = A + 1;
    -> IF (A mod 2) THEN
    -> ITERATE loop_label;
    -> ELSE
    -> SET XYZ = CONCAT(XYZ,A,',');
    -> END IF;
    -> END LOOP;
    -> SELECT XYZ;
    -> END //
Query OK, 0 rows affected (0.07 sec)

現在,當我們呼叫這個過程時,我們可以看到下面的結果-

mysql> DELIMITER ;
mysql> CALL LOOP_loop ();
+-------------+
| XYZ         |
+-------------+
| 2,4,6,8,10, |
+-------------+
1 row in set (0.04 sec)
Query OK, 0 rows affected (0.04 sec)

在上面的查詢中,如果A 的值大於10,則循環由於LEAVE 語句而終止。如果 A 的值為奇數,則 ITERATE 語句將忽略其下方的所有內容並開始新的迭代。如果 A 的值為偶數,則 ELSE 語句中的區塊將使用偶數建構字串。

以上是MySQL LOOP語句如何在預存程序中使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:tutorialspoint.com。如有侵權,請聯絡admin@php.cn刪除