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

संग्रहीत कार्यविधि का उपयोग करते हुए IF शर्त के साथ MySQL योग क्वेरी


Sum() MySQL में एक समग्र कार्य है। यदि आप शर्त के साथ योग क्वेरी का उपयोग कर सकते हैं। if कंडीशन के साथ सम क्वेरी को समझने के लिए, आइए एक टेबल बनाएं।

तालिका बनाने की क्वेरी -

mysql> तालिका बनाएं SumWithIfCondition −> ( −> ModeOfPayment varchar(100) −> , −> राशि int −>);क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (1.60 सेकंड)

इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है -

mysql> SumWithIfCondition मानों में डालें ('ऑफ़लाइन', 10); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.21 सेकंड) mysql> SumWithIfCondition मानों में डालें ('ऑनलाइन', 100); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) )mysql> SumWithIfCondition मानों ('ऑफ़लाइन', 20) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.13 सेकंड) mysql> SumWithIfCondition मानों में डालें ('ऑनलाइन', 200); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.16 सेकंड) mysql> SumWithIfCondition मानों ('ऑफ़लाइन', 30) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.11 सेकंड) mysql> SumWithIfCondition मानों ('ऑनलाइन', 300) में डालें; क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड)

चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -

mysql> SumWithIfCondition से *चुनें;

निम्न आउटपुट है -

<पूर्व>+---------------+----------+| मोडऑफपेमेंट | राशि |+---------------+----------+| ऑफलाइन | 10 || ऑनलाइन | 100 || ऑफलाइन | 20 || ऑनलाइन | 200 || ऑफलाइन | 30 || ऑनलाइन | 300 |+---------------+----------+6 पंक्तियाँ सेट में (0.00 सेकंड)

यहां संग्रहीत कार्यविधि है जो एक स्ट्रिंग को एक पैरामीटर के रूप में लेती है -

mysql> सीमांकक //mysql> प्रक्रिया बनाएं sp_GetSumWithPaymentMode11(PaymentMode varchar(200))−> start−> PaymentMode का चयन करें, sum(if(ModeOfPayment=PaymentMode,Amount,0)) SumWithIfCondition से TotalAmount के रूप में;−> समाप्त / /क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.32 सेकंड)mysql> सीमांकक;

अब आप कॉल कमांड का उपयोग करके संग्रहीत कार्यविधि को कॉल कर सकते हैं।

केस 1 - ऑनलाइन के लिए

क्वेरी इस प्रकार है -

mysql> कॉल करें sp_GetSumWithPaymentMode11('Online');

निम्न आउटपुट है -

<पूर्व>+---------------+---------------+| भुगतान मोड | टोटलअमाउंट |+---------------+---------------+| ऑनलाइन | 600 |+---------------+---------------+1 पंक्ति सेट में (0.00 सेकंड)क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.01 सेकंड)

केस 2 - ऑफलाइन के लिए

क्वेरी इस प्रकार है -

mysql> कॉल करें sp_GetSumWithPaymentMode11('Offline');

निम्न आउटपुट है -

<पूर्व>+---------------+---------------+| भुगतान मोड | कुल राशि |+---------------+---------------+| ऑफलाइन | 60 |+----------------+---------------+1 पंक्ति सेट में (0.00 सेकंड)क्वेरी ठीक है, 0 पंक्तियाँ प्रभावित (0.01 सेकंड)
  1. MySQL कार्यक्षेत्र का उपयोग करके संग्रहीत कार्यविधियाँ बनाएँ?

    आइए पहले एक संग्रहित प्रक्रिया बनाएं। MySQL वर्कबेंच का उपयोग करके एक संग्रहीत कार्यविधि बनाने की क्वेरी निम्नलिखित है। व्यवसाय का उपयोग करें;DELIMITER//ड्रॉप प्रक्रिया अगर SP_GETMESSAGE मौजूद है; प्रक्रिया बनाएं SP_GETMESSAGE()BEGINDECLARE MESSAGE VARCHAR(100);SET MESSAGE=Hello;Select CONCAT(MESSAG

  1. एक MySQL संग्रहीत प्रक्रिया के अंदर डायनामिक SQL क्वेरी लागू करें?

    संग्रहीत कार्यविधि में गतिशील SQL क्वेरी के लिए, PREPARE STATEMENT की अवधारणा का उपयोग करें। आइए पहले एक टेबल बनाएं - mysql> create table DemoTable2033    -> (    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,    -> Name varchar(20)    -> ); Que

  1. अपाचे के साथ MySQL का उपयोग करना

    आइए समझें कि अपाचे के साथ MySQL का उपयोग कैसे करें - अपाचे एक वेब सर्वर सॉफ्टवेयर है जिसे अपाचे सॉफ्टवेयर फाउंडेशन द्वारा विकसित और अनुरक्षित किया जाता है। यह एक ऐसा सॉफ्टवेयर है जो वेब पेज तक पहुंचने के लिए उपयोगकर्ता से अनुरोध लेता है। HTTP अनुरोध पर कुछ सुरक्षा जांच की जाती है और फिर उपयोगकर्ता