যেমন আমরা জানি যে MySQL আমাদের লুপ স্টেটমেন্ট প্রদান করে যা আমাদের একটি শর্তের উপর ভিত্তি করে বারবার SQL কোডের একটি ব্লক কার্যকর করতে দেয়। একটি পুনরাবৃত্তি লুপ স্টেটমেন্ট এই ধরনের লুপ স্টেটমেন্টের একটি। এর সিনট্যাক্স নিম্নরূপ -
REPEAT statements; UNTIL expression END REPEAT
প্রথমত, MySQL স্টেটমেন্টগুলি চালায়, এবং তারপর এটি এক্সপ্রেশনের মূল্যায়ন করে। যদি অভিব্যক্তিটি FALSE তে মূল্যায়ন করে, অভিব্যক্তিটি সত্যে মূল্যায়ন না হওয়া পর্যন্ত MySQL বারবার বিবৃতিগুলি সম্পাদন করে। পুনরাবৃত্তি বিবৃতি কার্যকর হওয়ার পরে লুপ এক্সপ্রেশন চেক করে, তাই একে পোস্ট-টেস্ট লুপও বলা হয়।
একটি পুনরাবৃত্তি ব্যবহার প্রদর্শন করতে৷ সংরক্ষিত পদ্ধতির সাথে লুপ, নিম্নলিখিত একটি উদাহরণ -
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)
এখন, আমরা যখন এই পদ্ধতিটি চালু করি তখন আমরা নীচের ফলাফল দেখতে পাব −
৷mysql> DELIMITER ; mysql> CALL Repeat_Loop(); +-----------------------+ | XYZ | +-----------------------+ | 1,2,3,4,5,6,7,8,9,10, | +-----------------------+ 1 row in set (0.00 sec) Query OK, 0 rows affected (0.01 sec)