MySQL में दो तारीखों के बीच डेटा क्वेरी करने के लिए BETWEEN स्टेटमेंट का उपयोग किया जाता है। इसका सिंटैक्स निम्नलिखित है:
SELECT * FROM yourTableName WHERE yourColumnName BETWEEN 'yourStartingDate' AND CURDATE();
यहां CURDATE() या NOW() दोनों फ़ंक्शन काम करते हैं। CURDATE() केवल तारीख लौटाता है, जबकि NOW() तारीख और समय दोनों देता है।
उदाहरण के साथ समझें
सबसे पहले एक टेबल बनाते हैं:
CREATE TABLE BetweenDateDemo (StartDate DATETIME);
अब इसमें कुछ रिकॉर्ड डालते हैं:
INSERT INTO BetweenDateDemo VALUES (DATE_ADD(NOW(), INTERVAL -1 YEAR)); INSERT INTO BetweenDateDemo VALUES (DATE_ADD(NOW(), INTERVAL -2 YEAR)); INSERT INTO BetweenDateDemo VALUES (DATE_ADD(NOW(), INTERVAL -3 YEAR)); INSERT INTO BetweenDateDemo VALUES (DATE_ADD(NOW(), INTERVAL 1 YEAR)); INSERT INTO BetweenDateDemo VALUES (DATE_ADD(NOW(), INTERVAL 2 YEAR)); INSERT INTO BetweenDateDemo VALUES (DATE_ADD(NOW(), INTERVAL 3 YEAR));
सभी रिकॉर्ड देखने के लिए:
SELECT * FROM BetweenDateDemo;
दो तारीखों के बीच क्वेरी करना
अब BETWEEN का उपयोग करके '2014-08-12' से आज तक की तारीखों को फ़िल्टर करते हैं:
SELECT * FROM BetweenDateDemo WHERE StartDate BETWEEN '2014-08-12' AND CURDATE();
क्रमबद्ध परिणाम प्राप्त करना
परिणामों को तारीख के अनुसार क्रमबद्ध करने के लिए ORDER BY का उपयोग करें:
SELECT * FROM BetweenDateDemo WHERE StartDate BETWEEN '2014-08-12' AND CURDATE() ORDER BY StartDate;
नोट: BETWEEN ऑपरेटर दोनों सीमाओं को शामिल करता है (inclusive)। यदि आपके कॉलम में DATETIME है और आप केवल तारीख की तुलना करना चाहते हैं, तो DATE(yourColumnName) का उपयोग करें।