MySQL में DATE() फ़ंक्शन और GROUP BY के साथ SUM() का उपयोग करके आप प्रत्येक दिनांक के लिए मानों का योग प्राप्त कर सकते हैं, जो दिन-वार गिनती या योग रिपोर्ट के लिए उपयोगी है।
उदाहरण तालिका बनाना
mysql> CREATE TABLE DemoTable (
ShippingDate DATETIME,
CountOfDate INT
);
डेटा डालना (एक ही दिनांक के लिए कई पंक्तियां)
mysql> INSERT INTO DemoTable VALUES
-> ('2018-01-31', 6), ('2016-12-01', 15), ('2016-12-01', 10),
-> ('2016-12-01', 5), ('2019-04-09', 3), ('2018-01-31', 4), ('2019-04-09', 4);
डेटा देखना
mysql> SELECT * FROM DemoTable;
आउटपुट:
+---------------------+-------------+ | ShippingDate | CountOfDate | +---------------------+-------------+ | 2018-01-31 00:00:00 | 6 | | 2016-12-01 00:00:00 | 15 | | 2016-12-01 00:00:00 | 10 | | 2016-12-01 00:00:00 | 5 | | 2019-04-09 00:00:00 | 3 | | 2018-01-31 00:00:00 | 4 | | 2019-04-09 00:00:00 | 4 | +---------------------+-------------+
प्रत्येक दिनांक के लिए योग प्राप्त करना
mysql> SELECT DATE(ShippingDate), SUM(CountOfDate) FROM DemoTable GROUP BY DATE(ShippingDate);
आउटपुट:
+--------------------+------------------+ | DATE(ShippingDate) | SUM(CountOfDate) | +--------------------+------------------+ | 2018-01-31 | 10 | | 2016-12-01 | 30 | | 2019-04-09 | 7 | +--------------------+------------------+
व्याख्या:
DATE(ShippingDate)- DATETIME से केवल दिनांक भाग निकालता है (समय हटाता है)GROUP BY DATE(ShippingDate)- समान दिनांक वाली पंक्तियों को समूहित करता हैSUM(CountOfDate)- प्रत्येक समूह के लिए मानों का योग
गणना:
- 2018-01-31: 6 + 4 = 10
- 2016-12-01: 15 + 10 + 5 = 30
- 2019-04-09: 3 + 4 = 7
उपयोग मामला: दैनिक बिक्री रिपोर्ट, लॉग विश्लेषण, ट्रैफिक गिनती, इन्वेंट्री मूवमेंट।