Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

कुछ शर्तों के आधार पर MySQL टेबल से मान चुनने के लिए स्टोर्ड प्रोसीजर कैसे बनाएं?


हम MySQL टेबल से कुछ शर्तों के आधार पर रिकॉर्ड्स चुनने के लिए IN और OUT ऑपरेटर्स के साथ एक स्टोर्ड प्रोसीजर बना सकते हैं। इसे समझने के लिए हम '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   | Bangalore  | Computers  |
+------+---------+------------+------------+
4 rows in set (0.01 sec)

अब, 'select_studentinfo' नामक प्रोसीजर बनाकर जैसा कि नीचे दिखाया गया है, हम 'student_info' टेबल से मान चुन सकते हैं 'id' का मान प्रदान करके:

mysql> DELIMITER // ;
mysql> CREATE PROCEDURE Select_studentinfo (
    -> IN p_id INT,
    -> OUT p_name VARCHAR(20),
    -> OUT p_address VARCHAR(20),
    -> OUT p_subject VARCHAR(20))
    -> BEGIN
    -> SELECT name, address, subject INTO p_name, p_address, p_subject
    -> FROM student_info
    -> WHERE id = p_id;
    -> END //
Query OK, 0 rows affected (0.03 sec)

अब, उन मानों के साथ प्रोसीजर को आह्वान करें जिन्हें हम शर्त के रूप में प्रदान करना चाहते हैं:

mysql> DELIMITER ; //
mysql> CALL Select_studentinfo(110, @p_name, @p_address, @p_subject);
Query OK, 1 row affected (0.06 sec)
mysql> SELECT @p_name AS Name, @p_address AS Address, @p_subject AS Subject;
+--------+------------+-----------+
| Name   | Address    | Subject   |
+--------+------------+-----------+
| Rahul  | Chandigarh | History   |
+--------+------------+-----------+
1 row in set (0.00 sec)

  1. - टेबल बनाने के लिए MySQL स्टोर्ड प्रोसीजर

    MySQL में टेबल बनाने वाला स्टोर्ड प्रोसीजर टेबल बनाने वाले स्टोर्ड प्रोसीजर को बनाने का क्वेरी। यहां हम तीन कॉलम वाली एक टेबल बना रहे हैं, जिनमें से एक Id है: DELIMITER ; अब आप CALL कमांड की मदद से स्टोर्ड प्रोसीजर को कॉल कर सकते हैं: call Stored_Procedure_CreatingTable(); Query OK, 0 rows affecte

  1. - MySQL में कीवर्ड के आधार पर टेबल से रिकॉर्ड चुनना

    मान लें कि टेबल में कुछ कॉलम मानों में एक विशिष्ट कीवर्ड है और आप केवल उन रिकॉर्ड्स को चाहते हैं। इसके लिए LIKE ऑपरेटर का उपयोग करें। पहले एक उदाहरण देखते हैं और टेबल बनाते हैं: mysql> create table DemoTable750 (Title varchar(200)); Query OK, 0 rows affected (0.69 sec) इन्सर्ट कमांड का उपयोग करके

  1. - MySQL क्वेरी: टेबल से कुछ मानों को बाहर करें

    टेबल से कुछ मानों को बाहर करने के लिए NOT IN() का उपयोग करें। आइए पहले एक टेबल बनाते हैं: mysql> create table DemoTable791 ( Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100) ); Query OK, 0 rows affected (0.61 sec) इन्सर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें: mysq