VARCHAR कॉलम में संग्रहीत तिथियों से अधिकतम तिथि निकालना
जब तिथियां VARCHAR कॉलम में टेक्स्ट फॉर्मेट में संग्रहीत होती हैं (जैसे 'Sunday, 11 August 2019'), तो उन्हें तिथि के रूप में तुलना करने के लिए STR_TO_DATE() फ़ंक्शन का उपयोग करना पड़ता है।
व्यावहारिक उदाहरण
तालिका बनाना
mysql> CREATE TABLE DemoTable (
AdmissionDate VARCHAR(100)
);
टेक्स्ट फॉर्मेट में तिथि डालना
mysql> INSERT INTO DemoTable VALUES('Sunday, 11 August 2019');
mysql> INSERT INTO DemoTable VALUES('Friday, 18 October 2019');
mysql> INSERT INTO DemoTable VALUES('Thursday, 18 July 2019');
सभी रिकॉर्ड देखना
mysql> SELECT * FROM DemoTable;
आउटपुट:
+-------------------------+ | AdmissionDate | +-------------------------+ | Sunday, 11 August 2019 | | Friday, 18 October 2019 | | Thursday, 18 July 2019 | +-------------------------+
अधिकतम तिथि प्राप्त करने के लिए क्वेरी
mysql> SELECT MAX(STR_TO_DATE(AdmissionDate, '%W, %d %M %Y')) AS MaxDate FROM DemoTable;
आउटपुट:
+------------+ | MaxDate | +------------+ | 2019-10-18 | +------------+
फॉर्मेट स्पेसिफायर्स की व्याख्या
%W- सप्ताह का पूरा नाम (Sunday, Monday, आदि)%d- महीने का दिन (01-31)%M- महीने का पूरा नाम (January, February, आदि)%Y- 4 अंकों वाला वर्ष
महत्वपूर्ण: STR_TO_DATE() स्ट्रिंग को DATE मान में परिवर्तित करता है, जिससे MAX() सही ढंग से काम कर सके।