Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

एसयूएम () MySQL में फ़ंक्शन

MySQL में, SUM() एग्रीगेट फ़ंक्शन किसी दिए गए एक्सप्रेशन का योग देता है।

इसका उपयोग व्यंजक में सभी विशिष्ट (अद्वितीय) मानों का योग वापस करने के लिए भी किया जा सकता है।

सिंटैक्स

वाक्य रचना इस प्रकार है:

SUM([DISTINCT] expr) [over_clause]

नमूना डेटा

मान लीजिए हमारे पास Products . नामक एक टेबल है निम्नलिखित डेटा के साथ:

SELECT
    VendorId,
    ProductName,
    ProductPrice
FROM Products;

परिणाम:

+----------+---------------------------------+--------------+
| VendorId | ProductName                     | ProductPrice |
+----------+---------------------------------+--------------+
|     1001 | Left handed screwdriver         |        25.99 |
|     1001 | Right handed screwdriver        |        25.99 |
|     1001 | Long Weight (blue)              |        14.75 |
|     1001 | Long Weight (green)             |        11.99 |
|     1002 | Sledge Hammer                   |         NULL |
|     1003 | Chainsaw                        |       245.00 |
|     1003 | Straw Dog Box                   |        55.99 |
|     1004 | Bottomless Coffee Mugs (4 Pack) |         9.99 |
+----------+---------------------------------+--------------+

उदाहरण

सभी कीमतों का योग प्राप्त करने के लिए हम निम्नलिखित क्वेरी का उपयोग कर सकते हैं।

SELECT SUM(ProductPrice)
FROM Products;

परिणाम:

389.70

यहां, कीमत की जानकारी ProductPrice . में स्टोर की जाती है कॉलम, और इसलिए हम इसे SUM() . के तर्क के रूप में पास करते हैं फ़ंक्शन, जो तब योग की गणना करता है और परिणाम देता है।

शून्य मान

SUM() फ़ंक्शन किसी भी NULL मान को अनदेखा करता है। ऊपर हमारी नमूना तालिका में, स्लेजहैमर को इसके ProductPrice में एक NULL मान मिला है कॉलम, लेकिन गणना में उस पर ध्यान नहीं दिया गया।

फ़िल्टर किए गए परिणाम

SUM() फ़ंक्शन क्वेरी द्वारा लौटाई गई पंक्तियों पर काम करता है। इसलिए यदि आप परिणामों को फ़िल्टर करते हैं, तो SUM() . का आउटपुट प्रतिबिंबित करेगा।

SELECT SUM(ProductPrice)
FROM Products
WHERE VendorId = 1001;

परिणाम:

78.72

इस मामले में, 78.72 निर्दिष्ट विक्रेता द्वारा पेश किए गए सभी उत्पादों का योग है।

DISTINCT कीवर्ड

आप DISTINCT . का उपयोग कर सकते हैं SUM() with के साथ कीवर्ड केवल अलग-अलग मानों की गणना करने के लिए। अर्थात्, यदि कोई डुप्लिकेट मान हैं, तो उन्हें एक मान के रूप में माना जाता है।

उदाहरण:

SELECT SUM(DISTINCT ProductPrice)
FROM Products;

परिणाम:

363.71

हमारी तालिका में एक ही कीमत के साथ दो आइटम हैं (बाएं हाथ के स्क्रूड्राइवर और दाएं हाथ के स्क्रूड्राइवर दोनों की कीमत 25.99 है)। DISTINCT कीवर्ड के परिणामस्वरूप उन दोनों मानों को एक मान लिया जाता है।

विंडो फ़ंक्शन

हम एक OVER . का उपयोग कर सकते हैं SUM() . के साथ क्लॉज विंडो फ़ंक्शन बनाने के लिए फ़ंक्शन। SQL देखें SUM() उदाहरण के लिए शुरुआती के लिए।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL को कैसे प्रबंधित करें - Oracle DBA के लिए

  2. MySQL:तालिका नहीं बना सकता (त्रुटि:150)

  3. तालिका बनाने में त्रुटि:आपको अपने SQL सिंटैक्स में 'ऑर्डर (order_id INT UNSIGNED NOT NULL AUTO_INCREMENT, user_id' लाइन 1 पर एक त्रुटि है)

  4. डेटा संदर्भ का उपयोग करके सॉकर डेटा की एक अरब-पंक्ति तालिका का विभाजन

  5. त्रुटि 1698 (28000):उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए प्रवेश निषेध