BETWEEN के साथ तिथि सीमा में रिकॉर्ड गिनना
दो तिथियों के बीच (समावेशी) आने वाले लॉगिन रिकॉर्ड की संख्या गिनने के लिए BETWEEN ऑपरेटर के साथ COUNT(*) का उपयोग करें।
टेबल और डेटा
mysql> CREATE TABLE DemoTable (
Login DATETIME
);
Query OK, 0 rows affected (0.66 sec)
mysql> INSERT INTO DemoTable VALUES('2019-08-10');
Query OK, 1 row affected (0.11 sec)
mysql> INSERT INTO DemoTable VALUES('2019-08-12');
Query OK, 1 row affected (0.17 sec)
mysql> INSERT INTO DemoTable VALUES('2019-08-20');
Query OK, 1 row affected (0.09 sec)
mysql> INSERT INTO DemoTable VALUES('2019-08-24');
Query OK, 1 row affected (0.12 sec)
सभी रिकॉर्ड
mysql> SELECT * FROM DemoTable;
+---------------------+ | Login | +---------------------+ | 2019-08-10 00:00:00 | | 2019-08-12 00:00:00 | | 2019-08-20 00:00:00 | | 2019-08-24 00:00:00 | +---------------------+ 4 rows in set (0.00 sec)
2019-08-12 से 2019-08-24 के बीच लॉगिन गिनना
mysql> SELECT COUNT(*) FROM DemoTable
WHERE Login BETWEEN '2019-08-12' AND '2019-08-24';
परिणाम:
+----------+ | count(*) | +----------+ | 3 | +----------+ 1 row in set (0.05 sec)
व्याख्या: '2019-08-12', '2019-08-20', '2019-08-24' सीमा में हैं (3 रिकॉर्ड)। '2019-08-10' सीमा से पहले है। BETWEEN दोनों सीमाओं को शामिल करता है। DATETIME कॉलम के लिए तिथि स्ट्रिंग देने पर समय 00:00:00 मान लिया जाता है।
सापेक्ष तिथि के लिए: WHERE Login BETWEEN CURDATE() - INTERVAL 7 DAY AND CURDATE() (पिछले 7 दिन)।