इसे सरल फ़ंक्शनपर छोड़ दें। ए> एस। DATE()
स्ट्रिंग का दिनांक भाग YYYY-MM-DD प्रारूप में लौटाता है:
SELECT DATE(birthday) FROM `test`
परिणाम:
2004-12-25
2004-12-25
1994-12-25
1994-12-01
आपका कोड काम नहीं करने का कारण यह है कि STR_TO_DATE()
समान इनपुट और आउटपुट स्वरूपों की अपेक्षा करता है, उदा। STR_TO_DATE('2014-08-29', '%Y-%m-%d')
. दस्तावेज़ीकरण में उदाहरण
. इस फ़ंक्शन का उपयोग अधिकतर दिनांक या समय को एक प्रारूप से दूसरे प्रारूप में परिवर्तित करने के लिए किया जाता है, जहां मूल प्रारूप MySQL के बाहर से कुछ है और उदाहरण के लिए आप डेटा को MySQL के दिनांक प्रारूप में आयात करना चाहते हैं - इस मामले में, आपको पता चल जाएगा कि मूल क्या है दिनांक प्रारूप है।
उदाहरण:
SELECT STR_TO_DATE('20041225', '%Y-%m-$d'); -- null - formats don't match
SELECT STR_TO_DATE('2004-12-25', '%Y-%m-%d'); -- 2004-12-25 - formats match