বুঝানোর জন্য 'student_info' নামক টেবিল ব্যবহার করা হলো, যাতে নিচের মানগুলো আছে:
mysql> SELECT * FROM student_info; +------+---------+------------+------------+ | id | Name | Address | Subject | +------+---------+------------+------------+ | 101 | YashPal | Amritsar | History | | 105 | Gaurav | Jaipur | Literature | | 110 | Rahul | Chandigarh | History | | 125 | Raman | Shimla | Computers | +------+---------+------------+------------+ 4 rows in set (0.00 sec)
এখন, নিচের কোয়েরি দিয়ে OUT প্যারামিটারসহ একটি স্টোরড প্রোসিজার তৈরি করব যা সাবজেক্টের নাম প্যারামিটার হিসেবে নিয়ে সে সাবজেক্টের মোট সংখ্যা গণনা করবে।
mysql> DELIMITER // ;
mysql> CREATE PROCEDURE subjects (IN S_Subject VARCHAR(25), OUT total INT)
-> BEGIN
-> SELECT COUNT(subject) INTO total
-> FROM student_info
-> WHERE subject = S_subject;
-> END //
Query OK, 0 rows affected (0.00 sec)
mysql> DELIMITER ;
'S_Subject' হলো IN প্যারামিটার যেটি আমরা গণনা করতে চাই এবং 'total' হলো OUT প্যারামিটার যেটি নির্দিষ্ট সাবজেক্টের সংখ্যা সংরক্ষণ করবে।
mysql> CALL subjects('Computers', @total);
Query OK, 1 row affected (0.02 sec)
mysql> SELECT @total;
+--------+
| @total |
+--------+
| 1 |
+--------+
1 row in set (0.01 sec)
mysql> CALL subjects('History', @total);
Query OK, 1 row affected (0.00 sec)
mysql> SELECT @total;
+--------+
| @total |
+--------+
| 2 |
+--------+
1 row in set (0.00 sec)