মাইএসকিউএল-এ লুপ সিনট্যাক্সের উদাহরণ থাকাকালীন:
delimiter //
CREATE procedure yourdatabase.while_example()
wholeblock:BEGIN
declare str VARCHAR(255) default '';
declare x INT default 0;
SET x = 1;
WHILE x <= 5 DO
SET str = CONCAT(str,x,',');
SET x = x + 1;
END WHILE;
select str;
END//
কোন মুদ্রণ:
mysql> call while_example();
+------------+
| str |
+------------+
| 1,2,3,4,5, |
+------------+
মাইএসকিউএলে পুনরায় লুপ সিনট্যাক্স উদাহরণ:
delimiter //
CREATE procedure yourdb.repeat_loop_example()
wholeblock:BEGIN
DECLARE x INT;
DECLARE str VARCHAR(255);
SET x = 5;
SET str = '';
REPEAT
SET str = CONCAT(str,x,',');
SET x = x - 1;
UNTIL x <= 0
END REPEAT;
SELECT str;
END//
কোন মুদ্রণ:
mysql> call repeat_loop_example();
+------------+
| str |
+------------+
| 5,4,3,2,1, |
+------------+
মাইএসকিউএলে লুপ সিনট্যাক্স উদাহরণের জন্য:
delimiter //
CREATE procedure yourdatabase.for_loop_example()
wholeblock:BEGIN
DECLARE x INT;
DECLARE str VARCHAR(255);
SET x = -5;
SET str = '';
loop_label: LOOP
IF x > 0 THEN
LEAVE loop_label;
END IF;
SET str = CONCAT(str,x,',');
SET x = x + 1;
ITERATE loop_label;
END LOOP;
SELECT str;
END//
কোন মুদ্রণ:
mysql> call for_loop_example();
+-------------------+
| str |
+-------------------+
| -5,-4,-3,-2,-1,0, |
+-------------------+
1 row in set (0.00 sec)
টিউটোরিয়ালটি করুন: http://www.mysqltutorial.org/stored-procedures-loop.aspx
যদি আমি আপনাকে এই ধরণের মাইএসকিউএল ফর লুপ কনস্ট্রাকশনসকে উত্পাদনের দিকে ঠেলে দিচ্ছি তবে আমি ফেনা ক্ষেপণাস্ত্র লঞ্চারের সাহায্যে আপনাকে গুলি করব। আপনি পেরেক বেজায় একটি পাইপ রেঞ্চ ব্যবহার করতে পারেন, তবে এটি আপনাকে নির্বোধ দেখায়।