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

MySQL में समान कॉलम मान वाले फील्ड का योग कैसे निकालें?


GROUP BY से समान मानों का योग

MySQL में किसी कॉलम के समान मान वाली पंक्तियों के लिए दूसरे कॉलम का योग निकालने के लिए GROUP BY के साथ SUM() का उपयोग करें।

उदाहरण: क्लाइंट सीरियल नंबर के अनुसार लागत का योग

टेबल बनाएं:

mysql> CREATE TABLE sumOfFieldsDemo (
    -> Id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> ClientSerialNumber VARCHAR(100),
    -> ClientCost INT
    -> );

डेटा इन्सर्ट करें:

mysql> INSERT INTO sumOfFieldsDemo(ClientSerialNumber, ClientCost) VALUES('1111', 450);
mysql> INSERT INTO sumOfFieldsDemo(ClientSerialNumber, ClientCost) VALUES('2222', 550);
mysql> INSERT INTO sumOfFieldsDemo(ClientSerialNumber, ClientCost) VALUES('3333', 150);
mysql> INSERT INTO sumOfFieldsDemo(ClientSerialNumber, ClientCost) VALUES('3333', 250);
mysql> INSERT INTO sumOfFieldsDemo(ClientSerialNumber, ClientCost) VALUES('2222', 1000);
mysql> INSERT INTO sumOfFieldsDemo(ClientSerialNumber, ClientCost) VALUES('1111', 1000);
mysql> INSERT INTO sumOfFieldsDemo(ClientSerialNumber, ClientCost) VALUES('1111', 500);
mysql> INSERT INTO sumOfFieldsDemo(ClientSerialNumber, ClientCost) VALUES('4444', 100);

सभी रिकॉर्ड:

+----+--------------------+------------+
| Id | ClientSerialNumber | ClientCost |
+----+--------------------+------------+
| 1  | 1111               | 450        |
| 2  | 2222               | 550        |
| 3  | 3333               | 150        |
| 4  | 3333               | 250        |
| 5  | 2222               | 1000       |
| 6  | 1111               | 1000       |
| 7  | 1111               | 500        |
| 8  | 4444               | 100        |
+----+--------------------+------------+

सीरियल नंबर के अनुसार कुल लागत की क्वेरी

mysql> SELECT Id, ClientSerialNumber, SUM(ClientCost) AS TotalSum
    -> FROM sumOfFieldsDemo
    -> GROUP BY ClientSerialNumber;

परिणाम:

+----+--------------------+----------+
| Id | ClientSerialNumber | TotalSum |
+----+--------------------+----------+
| 1  | 1111               | 1950     |
| 2  | 2222               | 1550     |
| 3  | 3333               | 400      |
| 8  | 4444               | 100      |
+----+--------------------+----------+

गणना विवरण:

  • 1111: 450 + 1000 + 500 = 1950
  • 2222: 550 + 1000 = 1550
  • 3333: 150 + 250 = 400
  • 4444: 100

ध्यान दें: Id कॉलम ग्रुप में नहीं है, इसलिए MySQL किसी भी पंक्ति का Id दिखा देता है (यहां पहली पंक्ति का)। यदि Id भी चाहिए तो MIN(Id) या MAX(Id) उपयोग करें।

  1. - MySQL में 5 टेबल से 'UP' कॉलम का योग निकालना

    UNION ALL और SUM() के साथ कई टेबल से योग की गणना समान कॉलम नाम UP वाले 5 टेबल से कुल योग निकालने के लिए UNION ALL का उपयोग करें। पहले 5 टेबल बनाएं और डेटा डालें: mysql> create table DemoTable1977 ( UP int ); Query OK, 0 rows affected (0.00 sec) mysql> insert into DemoTable1977 values(10); ...

  1. - MySQL में GROUP BY HAVING से समान ID वाली पंक्तियों का SUM निकालें

    GROUP BY + HAVING = 2000; उदाहरण डेटा insert into demo84 values(1,2000), (1,2000), (2,1800), (2,2200), (3,1700); परिणाम: कुल ≥ 2000 वाले ID +------+-------+ | id | Total | +------+-------+ | 1 | 4000 | | 2  | 4000 | +------+-------+ ID 1: 2000+2000 = 4000 ID 2: 1800+2200 = 4000 I

  1. - MySQL में किसी कॉलम में अधिकतम मान खोजना

    किसी कॉलम में अधिकतम मान खोजने के लिए MAX(columnName) का उपयोग करना होगा। लेकिन, पहले, हम MySQL में डेटाबेस और टेबल के बारे में समझेंगे। MySQL इंस्टॉल करने से पहले, यह निर्धारित करना महत्वपूर्ण है कि किस संस्करण और किस डिस्ट्रीब्यूशन फॉर्मेट (यह बाइनरी फाइल या सोर्स फाइलों से हो सकता है) का उपयोग