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' नाम की प्रक्रिया बनाकर, हम 'id' का मान प्रदान करके 'student_info' तालिका से मानों का चयन कर सकते हैं -

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 संग्रहीत प्रक्रिया?

    तालिका बनाने वाली संग्रहीत कार्यविधि बनाने के लिए क्वेरी निम्नलिखित है। यहां, हम तीन कॉलम वाली एक टेबल बना रहे हैं, उनमें से एक है Id - DELIMITER; अब आप कॉल कमांड की मदद से संग्रहित प्रक्रिया को कॉल कर सकते हैं - कॉल Stored_Procedure_CreatingTable();क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.18 सेकंड

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

    मान लें कि किसी तालिका के कुछ कॉलम मानों में एक विशिष्ट कीवर्ड है और आप केवल वे रिकॉर्ड चाहते हैं। इसके लिए LIKE ऑपरेटर का इस्तेमाल करें। आइए पहले एक उदाहरण देखें और एक टेबल बनाएं - तालिका बनाएं DemoTable750 (शीर्षक varchar(200));क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.69 सेकंड) इंसर्ट कमांड का उप

  1. तालिका से कुछ मानों को बाहर करने के लिए MySQL क्वेरी

    तालिका से कुछ मानों को बाहर करने के लिए NOT IN() का उपयोग करें। आइए पहले एक टेबल बनाएं - टेबल बनाएं DemoTable791 (Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, FirstName varchar(100));क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.61 सेकंड) इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें - DemoTable791