যেমন আমরা জানি যে MySQL আমাদের লুপ স্টেটমেন্ট প্রদান করে যা আমাদের একটি শর্তের উপর ভিত্তি করে বারবার SQL কোডের একটি ব্লক কার্যকর করতে দেয়। যখন লুপ স্টেটমেন্ট এই ধরনের লুপ স্টেটমেন্টের একটি। এর সিনট্যাক্স নিম্নরূপ -
WHILE expression DO statements END WHILE
আসলে, WHILE লুপ প্রতিটি পুনরাবৃত্তির শুরুতে অভিব্যক্তি পরীক্ষা করে। অভিব্যক্তিটি সত্যে মূল্যায়ন করলে, মাইএসকিউএল WHILE এবং END WHILE এর মধ্যে বিবৃতিগুলি কার্যকর করবে যতক্ষণ না অভিব্যক্তিটি মিথ্যাতে মূল্যায়ন করে। WHILE লুপ স্টেটমেন্ট এক্সিকিউট হওয়ার আগে এক্সপ্রেশন চেক করে, তাই একে প্রিটেস্ট লুপও বলা হয়।
সংরক্ষিত পদ্ধতির সাথে WHILE লুপের ব্যবহার প্রদর্শন করতে, নিম্নলিখিত একটি উদাহরণ -
mysql> Delimiter // mysql> CREATE PROCEDURE While_Loop() -> BEGIN -> DECLARE A INT; -> DECLARE XYZ Varchar(50); -> SET A = 1; -> SET XYZ = ''; -> WHILE A <=10 DO -> SET XYZ = CONCAT(XYZ,A,','); -> SET A = A + 1; -> END WHILE; -> SELECT XYZ; -> END // Query OK, 0 rows affected (0.31 sec)
এখন, যখন আমরা এই পদ্ধতিটি −
শুরু করি তখন আমরা নীচের ফলাফল দেখতে পাবmysql> DELIMITER ; mysql> call While_Loop(); +-----------------------+ | XYZ | +-----------------------+ | 1,2,3,4,5,6,7,8,9,10, | +-----------------------+ 1 row in set (0.03 sec)