DATE(NOW()) (आज 00:00:00) और NOW() (वर्तमान डेटाटाइम) के बीच BETWEEN या तुलना ऑपरेटर का उपयोग करके आज के रिकॉर्ड फ़िल्टर करें।
टेबल बनाना और डेटा डालना
mysql> CREATE TABLE DemoTable (DueDate DATETIME);
Query OK, 0 rows affected (0.66 sec)
mysql> INSERT INTO DemoTable VALUES('2019-09-14'),('2019-09-14 08:00:10'),
('2019-09-14 08:44:00'),('2019-09-14 12:10:00');
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable;
आउटपुट:
+---------------------+
| DueDate |
+---------------------+
| 2019-09-14 00:00:00 |
| 2019-09-14 08:00:10 |
| 2019-09-14 08:44:00 |
| 2019-09-14 12:10:00 |
+---------------------+
00:00 से अब तक के लिए क्वेरी
mysql> SELECT * FROM DemoTable
WHERE DueDate > DATE(NOW()) AND DueDate < NOW();
परिणाम (मानकर NOW() = '2019-09-14 08:50:10'):
+---------------------+
| DueDate |
+---------------------+
| 2019-09-14 08:00:10 |
| 2019-09-14 08:44:00 |
+---------------------+
2 rows in set (0.00 sec)
नोट: DATE(NOW()) समय भाग को हटा देता है, जिससे मध्यरात्रि मिलती है। समावेशी सीमाओं के लिए >= और <= उपयोग करें। इंडेक्स उपयोग के लिए, WHERE DueDate >= DATE(NOW()) AND DueDate < NOW() + INTERVAL 1 SECOND पर विचार करें।