दिनांक फ़ील्ड द्वारा ऑर्डर करने के लिए सिंटैक्स निम्नलिखित है जो दिनांक प्रारूप में नहीं है
अपनेTableNameआदेश सेSTR_TO_DATE(yourColumnName,'%d/%m/%Y') DESC;तक *चुनें
उपरोक्त वाक्य रचना को समझने के लिए, आइए एक तालिका बनाते हैं। तालिका बनाने की क्वेरी इस प्रकार है
mysql> टेबल ऑर्डर बनाएंByDateFormatDemo -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> ArrivalDatetime varchar(100) -> );क्वेरी ओके, 0 पंक्तियाँ प्रभावित (0.73 सेकंड)
इंसर्ट कमांड का उपयोग करके टेबल में कुछ रिकॉर्ड डालें। क्वेरी इस प्रकार है -
mysql> ऑर्डर में डालेंByDateFormatDemo(ArrivalDatetime) मान ('01/10/2012'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.20 सेकंड) mysql> ऑर्डर में डालेंByDateFormatDemo(ArrivalDatetime) मान ('03/11/2010');क्वेरी ओके, 1 पंक्ति प्रभावित (0.15 सेकंड) mysql> ऑर्डर में डालेंByDateFormatDemo(ArrivalDatetime) मान ('04/09/2018'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.14 सेकंड) mysql> ऑर्डर में डालेंByDateFormatDemo(ArrivalDatetime) मान ( '31/01/2019'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.17 सेकंड) mysql> ऑर्डर में डालेंByDateFormatDemo(ArrivalDatetime) मान ('21/04/2017'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.21 सेकंड) mysql> ऑर्डर में डालेंByDateFormatDemo(ArrivalDatetime) मान ('23/05/2016'); क्वेरी ठीक है, 1 पंक्ति प्रभावित (0.12 सेकंड)
चयन कथन का उपयोग करके तालिका से सभी रिकॉर्ड प्रदर्शित करें। क्वेरी इस प्रकार है -
mysql> ऑर्डर से *ByDateFormatDemo चुनें;
निम्न आउटपुट है
<पूर्व>+----+---------------------+| आईडी | आगमन दिनांक समय |+----+-----------------+| 1 | 01/10/2012 || 2 | 03/11/2010 || 3 | 04/09/2018 || 4 | 31/01/2019 || 5 | 21/04/2017 || 6 | 23/05/2016 |+----+-----------------+6 पंक्तियों में सेट (0.00 सेकंड)यहां दिनांक फ़ील्ड द्वारा ऑर्डर करने के लिए क्वेरी है जो दिनांक प्रारूप में नहीं है
mysql> *ऑर्डर से चुनेंByDateFormatDemo -> इसके अनुसार ऑर्डर करें -> STR_TO_DATE(ArrivalDatetime,'%d/%m/%Y') DESC;
निम्न आउटपुट है
<पूर्व>+----+---------------------+| आईडी | आगमन दिनांक समय |+----+-----------------+| 4 | 31/01/2019 || 3 | 04/09/2018 || 5 | 21/04/2017 || 6 | 23/05/2016 || 1 | 01/10/2012 || 2 | 03/11/2010 |+----+-----------------+6 पंक्तियाँ सेट में (0.04 सेकंड)