Rumah > pangkalan data > tutorial mysql > Bagaimanakah pernyataan LOOP MySQL digunakan dalam prosedur tersimpan?

Bagaimanakah pernyataan LOOP MySQL digunakan dalam prosedur tersimpan?

WBOY
Lepaskan: 2023-08-26 19:13:10
ke hadapan
1297 orang telah melayarinya

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

MySQL menyediakan kita dengan pernyataan LOOP yang boleh berulang kali melaksanakan blok kod dan menambah fleksibiliti dalam menggunakan label gelung. Kami mempunyai dua pernyataan berikut yang membolehkan kami mengawal gelung -

LEAVE pernyataan

Ia membolehkan kami keluar dari gelung serta-merta tanpa menunggu semakan

ITEM STATEMENT

Ia membolehkan kami melangkau keseluruhan kod di bawahnya dan mulakan lelaran baharu.

Menunjukkan penggunaan pernyataan LOOP dengan prosedur tersimpan Berikut ialah prosedur tersimpan yang membina rentetan dengan nombor genap, seperti 2, 4, 6, 8, dsb. -

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)
Salin selepas log masuk

Sekarang, apabila kita memanggil prosedur ini, kita dapat melihat hasil berikut -

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)
Salin selepas log masuk

Dalam pertanyaan di atas, jika nilai A lebih daripada 10, gelung ditamatkan disebabkan oleh pernyataan LEAVE. Jika nilai A adalah ganjil, pernyataan ITERAT mengabaikan segala-galanya di bawahnya dan memulakan lelaran baharu. Jika nilai A ialah nombor genap, blok dalam pernyataan ELSE akan membina rentetan menggunakan nombor genap.

Atas ialah kandungan terperinci Bagaimanakah pernyataan LOOP MySQL digunakan dalam prosedur tersimpan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan