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

टेबल से डायनामिक डेटा का उपयोग करने वाला MySQL स्टोर्ड फंक्शन कैसे बनाएं?


MySQL स्टोर्ड फंक्शन्स टेबल्स को संदर्भित कर सकते हैं लेकिन वे उन स्टेटमेंट्स का उपयोग नहीं कर सकते जो परिणाम सेट वापस करते हैं। इसलिए हम कह सकते हैं कि कोई SELECT क्वेरी नहीं है जो परिणाम सेट वापस करती है। लेकिन हम SELECT INTO का उपयोग करके इससे छुटकारा पा सकते हैं। उदाहरण के लिए, हम 'Avg_marks' नामक एक फंक्शन बना रहे हैं जो 'Student_marks' नामक टेबल से डायनामिक डेटा का उपयोग करके अंकों का औसत निकालता है, जिसमें निम्न रिकॉर्ड्स हैं:

mysql> Select * from Student_marks;
+-------+------+---------+---------+---------+
| Name  | Math | English | Science | History |
+-------+------+---------+---------+---------+
| Raman |   95 |      89 |      85 |      81 |
| Rahul |   90 |      87 |      86 |      81 |
+-------+------+---------+---------+---------+
2 rows in set (0.00 sec)

mysql> DELIMITER //
mysql> Create Function Avg_marks(S_name Varchar(50))
    ->
    RETURNS INT
    DETERMINISTIC
    BEGIN
    DECLARE M1,M2,M3,M4,avg INT;
    SELECT Math,English,Science,History INTO M1,M2,M3,M4 FROM Student_marks WHERE Name = S_name;
    SET avg = (M1+M2+M3+M4)/4;
    RETURN avg;
    END //
Query OK, 0 rows affected (0.01 sec)

mysql> DELIMITER ;
mysql> Select Avg_marks('Raman') AS 'Raman_Marks';
+-------------+
| Raman_Marks |
+-------------+
|          88 |
+-------------+
1 row in set (0.07 sec)

mysql> Select Avg_marks('Rahul') AS 'Raman_Marks';
+-------------+
| Raman_Marks |
+-------------+
|          86 |
+-------------+
1 row in set (0.00 sec)

  1. - MySQL स्टोर्ड फंक्शन को डेटाबेस से कैसे डिलीट करें?

    यदि आपके पास ALTER ROUTINE अधिकार है, तो DROP FUNCTION स्टेटमेंट से स्टोर्ड फंक्शन डिलीट कर सकते हैं। सिंटैक्स: DROP FUNCTION [IF EXISTS] function_name IF EXISTS क्लॉज वैकल्पिक है - यदि फंक्शन मौजूद नहीं है तो एरर रोकता है। उदाहरण: DROP FUNCTION if exists Hello1; Query OK, 0 rows affected (0.70

  1. - mysql_fetch_assoc() फ़ंक्शन का उपयोग करने वाली PHP स्क्रिप्ट की सहायता से MySQL तालिका से सभी रिकॉर्ड कैसे प्रदर्शित करें?

    इसे समझाने के लिए हम mysql_fetch_assoc() फ़ंक्शन का उपयोग करने वाली PHP स्क्रिप्ट की सहायता से Tutorials_tbl नामक तालिका से सभी रिकॉर्ड प्राप्त कर रहे हैं: उदाहरण <?php $dbhost = localhost:3036; $dbuser = root; $dbpass = rootpassword; $conn = mysql_connect($dbhost, $dbuser, $dbpas

  1. - कुछ शर्त(शर्तों) के आधार पर तालिका से मान लेने वाला MySQL व्यू कैसे बनाएं?

    यदि हम एक ऐसा व्यू बनाना चाहते हैं जो किसी तालिका से कुछ विशेष शर्त(शर्तों) के आधार पर मान लेता है तो हमें व्यू बनाते समय WHERE क्लॉज का उपयोग करना होगा। WHERE क्लॉज के आधार पर मान व्यू में संग्रहीत होंगे। WHERE क्लॉज के साथ MySQL व्यू बनाने का वाक्यविन्यास निम्न हो सकता है: वाक्यविन्यास Create View