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

MySQL SUM() फंक्शन को GROUP BY क्लॉज के साथ उपयोग करने का लाभ क्या है?


जब हम MySQL SUM() फंक्शन का उपयोग GROUP BY क्लॉज के साथ करते हैं तो SUM() फंक्शन GROUP BY क्लॉज में निर्दिष्ट प्रत्येक समूह के लिए योग का मूल्यांकन करता है। SUM() को GROUP BY क्लॉज के साथ उपयोग करने का लाभ यह है कि हम किसी विशेष समूह का कुल आसानी से पता लगा सकते हैं। उपरोक्त अवधारणा को समझने के लिए, 'employee_tbl' टेबल पर विचार करें जिसमें निम्नलिखित रिकॉर्ड हैं:

mysql> SELECT * FROM employee_tbl;
+------+------+------------+--------------------+
| id   | name | work_date  | daily_typing_pages |
+------+------+------------+--------------------+
| 1    | John | 2007-01-24 | 250                |
| 2    | Ram  | 2007-05-27 | 220                |
| 3    | Jack | 2007-05-06 | 170                |
| 3    | Jack | 2007-04-06 | 100                |
| 4    | Jill | 2007-04-06 | 220                |
| 5    | Zara | 2007-06-06 | 300                |
| 5    | Zara | 2007-02-06 | 350                |
+------+------+------------+--------------------+
7 rows in set (0.00 sec)

निम्नलिखित क्वेरी एक व्यक्ति से संबंधित सभी रिकॉर्ड्स को जोड़ देगी और आपको हर व्यक्ति द्वारा टाइप किए गए कुल पृष्ठ मिलेंगे।

mysql> SELECT name, SUM(daily_typing_pages) FROM employee_tbl GROUP BY name;
+------+-------------------------+
| name | SUM(daily_typing_pages) |
+------+-------------------------+
| Jack | 270                     |
| Jill | 220                     |
| John | 250                     |
| Ram  | 220                     |
| Zara | 650                     |
+------+-------------------------+
5 rows in set (0.17 sec)

  1. - MySQL में GROUP BY के साथ CASE WHEN का उपयोग करके काउंट सीमित करना

    MySQL में CASE WHEN के साथ GROUP BY परिणामों में काउंट को कैप करना CASE WHEN एक्सप्रेशन का उपयोग GROUP BY के साथ करके एग्रीगेट मानों पर सशर्त तर्क लागू किया जा सकता है, जैसे काउंट को अधिकतम मान तक सीमित करना। व्यावहारिक उदाहरण तालिका बनाना CREATE TABLE DemoTable ( UserId INT, UserMessage

  1. - MySQL में GROUP BY HAVING से गैर-डुप्लिकेट ID वाला रिकॉर्ड दिखाएं

    उपक्वेरी में HAVING COUNT < 2 से अद्वितीय ID खोजना जिन ID की केवल एक पंक्ति हो (डुप्लिकेट न हो), उन्हें खोजने के लिए उपक्वेरी में GROUP BY ... HAVING COUNT(*) < 2 का उपयोग करें, फिर मुख्य क्वेरी में IN से फ़िल्टर करें। टेबल और डेटा CREATE TABLE DemoTable ( Id INT, ColorName VARCHAR(100) );

  1. - MySQL में SUM() फंक्शन के परिणाम का WHERE क्लॉज में उपयोग: HAVING क्लॉज का उपयोग करें

    MySQL WHERE vs HAVING: एग्रीगेट फंक्शन के परिणाम पर फ़िल्टर WHERE क्लॉज पंक्तियों को समूहित करने पहले फ़िल्टर करता है, इसलिए इसमें एग्रीगेट फंक्शन (SUM, COUNT, AVG, आदि) उपयोग नहीं कर सकते। एग्रीगेट परिणाम पर फ़िल्टर के लिए HAVING क्लॉज का उपयोग करें। उदाहरण: कुल कीमत 40 से अधिक वाले नाम टेबल बनाएं