यदि निर्दिष्ट फॉर्मेट स्ट्रिंग और दिनांक स्ट्रिंग मेल नहीं खाते तो MySQL चेतावनी के साथ NULL मान आउटपुट के रूप में लौटाएगा। इसे समझने के लिए निम्नलिखित उदाहरण है:
mysql> Select STR_TO_DATE('20172810', '%Y,%d%m');
+------------------------------------+
| STR_TO_DATE('20172810', '%Y,%d%m') |
+------------------------------------+
| NULL |
+------------------------------------+
1 row in set, 1 warning (0.00 sec)
उपरोक्त क्वेरी NULL आउटपुट के रूप में लौटाती है क्योंकि फॉर्मेट स्ट्रिंग में %Y के बाद कॉमा (,) है लेकिन दिनांक स्ट्रिंग में 2017 के बाद कोई कॉमा नहीं है।
mysql> Show Warnings\G *************************** 1. row *************************** Level: Warning Code: 1411 Message: Incorrect datetime value: '20172810' for function str_to_date 1 row in set (0.00 sec)
इसी तरह, फॉर्मेट स्ट्रिंग में दिनांक यूनिट के क्रम को दिनांक स्ट्रिंग से अलग करने पर, MySQL वही करेगा। इसे समझने के लिए नीचे एक उदाहरण दिया गया है:
mysql> Select STR_TO_DATE('20172810', '%d%m%Y');
+-----------------------------------+
| STR_TO_DATE('20172810', '%d%m%Y') |
+-----------------------------------+
| NULL |
+-----------------------------------+
1 row in set, 1 warning (0.00 sec)
उपरोक्त क्वेरी में, फॉर्मेट स्ट्रिंग में यूनिट का क्रम दिनांक स्ट्रिंग में यूनिट के क्रम से बदल दिया गया है।
mysql> Show Warnings\G *************************** 1. row *************************** Level: Warning Code: 1411 Message: Incorrect datetime value: '20172810' for function str_to_date 1 row in set (0.00 sec)