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

यदि कॉलम में NULL मान भी हों तो MySQL SUM() फंक्शन कैसे मूल्यांकन करता है?


मान लीजिए यदि हम किसी कॉलम के मानों का योग गणना कर रहे हैं जिसमें NULL मान भी हैं तो MySQL SUM() फंक्शन NULL मानों को अनदेखा करता है और बाकी मानों का योग करता है। इसे समझने के लिए, 'employee' टेबल के निम्नलिखित उदाहरण पर विचार करें, जिसमें निम्नलिखित विवरण हैं:

mysql> SELECT * FROM Employee;
+----+--------+--------+
| ID | Name   | Salary |
+----+--------+--------+
| 1  | Gaurav | 50000  |
| 2  | Rahul  | 20000  |
| 3  | Advik  | 25000  |
| 4  | Aarav  | 65000  |
| 5  | Ram    | 20000  |
| 6  | Mohan  | 30000  |
| 7  | Aryan  | NULL   |
| 8  | Vinay  | NULL   |
+----+--------+--------+
8 rows in set (0.00 sec)

अब, मान लीजिए यदि हम उपरोक्त टेबल से कर्मचारियों का कुल वेतन चाहते हैं तो SUM() फंक्शन के साथ गणना करते समय, यह NULL मानों को अनदेखा करता है। निम्नलिखित क्वेरी आवश्यक परिणाम सेट उत्पन्न करेगी:

mysql> SELECT SUM(Salary) FROM Employee;
+-------------+
| SUM(Salary) |
+-------------+
| 210000      |
+-------------+
1 row in set (0.00 sec)

इसे निम्नलिखित क्वेरी की सहायता से भी सत्यापित किया जा सकता है:

mysql> SELECT SUM(Salary) FROM Employee WHERE Salary IS NOT NULL;
+-------------+
| SUM(Salary) |
+-------------+
| 210000      |
+-------------+
1 row in set (0.00 sec)

  1. - MySQL में एग्रीगेट फंक्शन का उपयोग करके कॉलम मानों का औसत निकालना

    MySQL में एग्रीगेट फंक्शन के साथ कॉलम मानों का औसत निकालना MySQL में AVG() फ़ंक्शन सीधे औसत निकालता है, लेकिन इस उदाहरण में एक कस्टम गणना दिखाई गई है: (SUM * 100) / (100 + 500)। व्यावहारिक उदाहरण तालिका बनाना CREATE TABLE DemoTable ( Number INT ); रिकॉर्ड डालना INSERT INTO DemoTable VALUES(

  1. - MySQL में REGEXP का उपयोग करके कॉलम मानों में स्ट्रिंग या डिजिट कैसे चेक करें

    REGEXP के साथ स्ट्रिंग और डिजिट मानों को फ़िल्टर करना MySQL में रेगुलर एक्सप्रेशन (REGEXP) का उपयोग करके कॉलम मानों को स्ट्रिंग या डिजिट के आधार पर फ़िल्टर करें। सिंटैक्स: केवल स्ट्रिंग मान (डिजिट नहीं): WHERE yourColumnName NOT REGEXP ^[0-9]+$ केवल डिजिट मान: WHERE yourColumnName REGEXP ^[0-9]+$

  1. - MySQL में महीने के अनुसार टेबल में मानों का योग कैसे करें

    EXTRACT(MONTH FROM ...) और GROUP BY के साथ मासिक योग इसके लिए EXTRACT() का उपयोग करें, जो विशिष्ट महीने के रिकॉर्ड निकालने की अनुमति देता है। उदाहरण के लिए, जनवरी में सभी कीमतों को जोड़ना (वर्ष की परवाह किए बिना)। पहले टेबल बनाएं: create table DemoTable1415 ( ProductPurchaseDate date, ProductPrice