MySQL স্টোরড প্রোসিডিউরে একক SELECT ... INTO স্টেটমেন্ট ব্যবহার করে একাধিক ভেরিয়েবলে মান অ্যাসাইন করা যায়।
উদাহরণ
টেবিল তৈরি:
mysql> CREATE TABLE useProcedure (
-> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> FirstName VARCHAR(20),
-> LastName VARCHAR(20)
-> );
ডেটা ইনসার্ট:
mysql> INSERT INTO useProcedure(FirstName, LastName) VALUES('Adam', 'Smith');
স্টোরড প্রোসিডিউর তৈরি:
mysql> DELIMITER //
mysql> CREATE PROCEDURE Sp_Demo()
-> BEGIN
-> DECLARE one VARCHAR(20);
-> DECLARE two VARCHAR(20);
-> SELECT FirstName, LastName INTO one, two FROM useProcedure WHERE id = 1;
-> SELECT one, two;
-> END //
Query OK, 0 rows affected (0.26 sec)
mysql> DELIMITER ;
প্রোসিডিউর কল:
mysql> CALL Sp_Demo();
+------+-------+ | one | two | +------+-------+ | Adam | Smith | +------+-------+
ব্যাখ্যা: SELECT FirstName, LastName INTO one, two - এখানে কলামের ক্রম অনুযায়ী ভেরিয়েবলগুলোর মান সেট হয়। প্রথম কলাম (FirstName) → প্রথম ভেরিয়েবল (one), দ্বিতীয় কলাম (LastName) → দ্বিতীয় ভেরিয়েবল (two)। এটি পারফরম্যান্সের দৃষ্টিকোণ থেকে দক্ষ কারণ একবারই ডেটাবেস হিট করে।