BETWEEN और CURDATE() के साथ आगामी तिथि रिकॉर्ड खोजना
वर्तमान तिथि से अगले कुछ दिनों में आने वाली तिथियों को खोजने के लिए BETWEEN ऑपरेटर के साथ CURDATE() का उपयोग करें।
टेबल और डेटा (मान लें वर्तमान तिथि 2019-08-18 है)
mysql> CREATE TABLE DemoTable (
ExpiryDate DATE
);
Query OK, 0 rows affected (0.55 sec)
mysql> INSERT INTO DemoTable VALUES('2018-01-21');
Query OK, 1 row affected (0.11 sec)
mysql> INSERT INTO DemoTable VALUES('2019-08-20');
Query OK, 1 row affected (0.39 sec)
mysql> INSERT INTO DemoTable VALUES('2018-08-20');
Query OK, 1 row affected (0.08 sec)
mysql> INSERT INTO DemoTable VALUES('2019-08-21');
Query OK, 1 row affected (0.14 sec)
सभी रिकॉर्ड
mysql> SELECT * FROM DemoTable;
+------------+ | ExpiryDate | +------------+ | 2018-01-21 | | 2019-08-20 | | 2018-08-20 | | 2019-08-21 | +------------+ 4 rows in set (0.00 sec)
अगले 2 दिनों में समाप्ति तिथि खोजने की क्वेरी
mysql> SELECT * FROM DemoTable
WHERE ExpiryDate BETWEEN CURDATE() AND CURDATE() + INTERVAL 2 DAY;
परिणाम (वर्तमान तिथि 2019-08-18 मानकर):
+------------+ | ExpiryDate | +------------+ | 2019-08-20 | +------------+ 1 row in set (0.00 sec)
नोट: CURDATE() + INTERVAL 2 DAY वर्तमान तिथि में 2 दिन जोड़ता है। BETWEEN दोनों सीमाओं को शामिल करता है। यदि टाइमस्टैम्प कॉलम है, तो NOW() का उपयोग करें।