MySQL में किसी DATE कॉलम में विशिष्ट तारीख की घटनाओं (occurrences) को गिनने के लिए, COUNT(*) के साथ WHERE date(column) = 'target_date' का उपयोग करें। यह सरल, कुशल, और इंडेक्स-अनुकूल है।
उदाहरण: '2019-12-11' तारीख की गिनती
डेमो टेबल बनाएं:
mysql> CREATE TABLE DemoTable1946 (ShippingDate DATE);
डेटा इन्सर्ट करें (कुछ डुप्लिकेट तारीख के साथ):
mysql> INSERT INTO DemoTable1946 VALUES
('2019-12-11'), ('2018-12-11'), ('2017-12-11'),
('2019-04-22'), ('2019-12-11'), ('2015-12-11');
डेटा:
+--------------+ | ShippingDate | +--------------+ | 2019-12-11 | | 2018-12-11 | | 2017-12-11 | | 2019-04-22 | | 2019-12-11 | | 2015-12-11 | +--------------+
विशिष्ट तारीख गिनें:
mysql> SELECT COUNT(*) FROM DemoTable1946 WHERE DATE(ShippingDate) = '2019-12-11';
आउटपुट:
+----------+ | count(*) | +----------+ | 2 | +----------+
DATE() फंक्शन क्यों?
- यदि कॉलम
DATETIMEहै, तोDATE()समय भाग हटाकर केवल तारीख भाग की तुलना करता है DATEकॉलम के लिए वैकल्पिक लेकिन हानिरहित- स्ट्रिंग तुलना से सुरक्षित (फॉर्मेट स्वतंत्र)
इंडेक्स-अनुकूल विकल्प (रेंज क्वेरी)
बड़े टेबल्स पर इंडेक्स उपयोग के लिए:
SELECT COUNT(*) FROM DemoTable1946 WHERE ShippingDate >= '2019-12-11' AND ShippingDate < '2019-12-12';
यह ShippingDate पर इंडेक्स का उपयोग कर सकता है।
एकाधिक तारीखों की गिनती (ग्रुप बाय)
SELECT ShippingDate, COUNT(*) AS occurrences FROM DemoTable1946 GROUP BY ShippingDate ORDER BY occurrences DESC;
आउटपुट:
+--------------+---------------+ | ShippingDate | occurrences | +--------------+---------------+ | 2019-12-11 | 2 | | 2018-12-11 | 1 | | 2017-12-11 | 1 | | 2019-04-22 | 1 | | 2015-12-11 | 1 | +--------------+---------------+
DATETIME कॉलम के लिए
-- पूरी तारीख रेंज (सर्वश्रेष्ठ प्रदर्शन) WHERE dt >= '2019-12-11 00:00:00' AND dt < '2019-12-12 00:00:00' -- या DATE() फंक्शन (इंडेक्स उपयोग नहीं कर सकता) WHERE DATE(dt) = '2019-12-11'
सापेक्ष तारीख (आज, कल, आदि)
WHERE DATE(ShippingDate) = CURDATE() -- आज WHERE DATE(ShippingDate) = CURDATE() - INTERVAL 1 DAY -- कल WHERE DATE(ShippingDate) BETWEEN CURDATE() - INTERVAL 7 DAY AND CURDATE() -- पिछले 7 दिन
तारीख गिनती रिपोर्टिंग, एनालिटिक्स, और मॉनिटरिंग डैशबोर्ड के लिए मौलिक ऑपरेशन है।