10 บทความล่าสุด เลือกหมวด
10 ข่าวไอทีล่าสุด
10 วิดีโอคลิปล่าสุด
หมวดหมู่บทความ
หมวดหมู่วิดีโอคลิป
บอทล่าสุดวันนี้
หน้าแรก >>บทความ >> MYSQL >> MYSQL กลุ่มคำสั่งที่ใช้ในการวนลูปใน stored procedure (MYSQL Loop Statement )
MYSQL กลุ่มคำสั่งที่ใช้ในการวนลูปใน stored procedure (MYSQL Loop Statement )
วันเสาร์ที่ 21 เดือน มกราคม พ.ศ.2555 00:00 น.

     กลุ่มคำสั่งที่ใช้ในการวนลูปใน stored procedure จะทำงานไปเรื่อยๆ จนกว่าเงื่อนไขที่กำหนดไว้จะเป็นเท็จหรือเป็นค่าที่เรากำหนด จึงหลุดออกจากการทำงาน มี 3 ประเภทดังนี้

        1.คำสั่ง LOOP และ END LOOP จะทำงานไปเรื่อยๆ จนกว่าเงื่อนไขตรงกับที่เรากำหนด

        2.คำสั่ง REPEAT และ UNTIL จะทำงานตามคำสั่งต่างๆ ก่อน จึงจะมาตรวจสอบเงื่อนไขที่คำสั่ง UNTIL แล้วจะวนกลับขึ้นไปทำงานที่คำสั่งต่างๆใหม่ ถ้าเงื่อนไขยังเป็นจริง

        3.คำสั่ง WHILE และ END WHILE จะตรวจสอบเงื่อนไขที่คำสั่ง WHILE ก่อน ถ้าเงื่อนไขยังเป็นจริง จึงทำงานตามคำสั่งต่างๆ

        ตัวอย่างที่ 1 เป็นการวนลูปใน store procedure โดยใช้คำสั่ง LOOP และ END LOOP จะทำงานไปเรื่อยๆ จนกว่าเงื่อนไขตรงกับที่เรากำหนด

        BEGIN
        DECLARE counter INT DEFAULT 0;

        simple_loop: LOOP
        SET counter=counter+1;
        IF counter=10 THEN
        LEAVE simple_loop;
         END IF;
        END LOOP simple_loop;

         SELECT concat('I can count to ',counter);

        END

        ตัวอย่างที่ 2 เป็นการวนลูปใน store procedure โดยใช้คำสั่ง REPEAT และ UNTIL จะทำงานตามคำสั่งต่างๆ ก่อน จึงจะมาตรวจสอบเงื่อนไขที่คำสั่ง UNTIL แล้วจะวนกลับขึ้นไปทำงานที่คำสั่งต่างๆใหม่ ถ้าเงื่อนไขยังเป็นจริง

        BEGIN
        DECLARE i INT DEFAULT 0;

        loop1: REPEAT
         SET i=i+1;
        IF MOD(i,2)<>0 THEN /*ตรวจสอบว่าเป็นเลขคี่*/
        Select concat(i," is an odd number");
        END IF;
        UNTIL i >= 10
         END REPEAT;

        END

        ตัวอย่างที่ 3 เป็นการวนลูปใน store procedure โดยใช้คำสั่ง WHILE และ END WHILE จะตรวจสอบเงื่อนไขที่คำสั่ง WHILE ก่อน ถ้าเงื่อนไขยังเป็นจริง จึงทำงานตามคำสั่งต่างๆ

        BEGIN
        DECLARE i INT DEFAULT 0;

        loop1: WHILE i<=10 DO
         IF MOD(i,2)<>0 THEN /*ตรวจสอบว่าเป็นเลขคี่*/
         SELECT CONCAT(i," is an odd number");
         END IF;
         SET i=i+1;
         END WHILE loop1;

        END

บทความที่เกี่ยวข้อง

View All
สอน XML        สอน MYSQL        สอน CSS        สอน HTML        สอน PHP        Sitemap        แลกลิ้งกับเรา         
Back to top
2011-2018 All Rights Reserved by  korakitinfo.com  E-Mail : korakit.wiw@korakitinfo.com
Page rendered in 0.0199 seconds
  www.korakitinfo.com