जैसा कि हम जानते हैं कि MySQL UNIX_TIMESTAMP फंक्शन की मदद से हम दिए गए डेटा/डेटाटाइम से सेकंड की संख्या उत्पन्न कर सकते हैं। लेकिन जब हम '1965-05-15' जैसे डेटा को बदलने की कोशिश करते हैं तो यह 0 (शून्य) आउटपुट देगा क्योंकि TIMESTAMP की रेंज '1970-01-01 00:00:01' से '2038-01-19 08:44:07' के बीच है। इसलिए, TIMESTAMP रेंज से परे के डेटा मानों को बदला नहीं जा सकता और हमेशा 0 आउटपुट लौटाएगा।
उदाहरण नीचे दिए गए हैं:
mysql> SELECT UNIX_TIMESTAMP('1965-05-15');
+----------------------------------------------+
| unix_timestamp('1965-05-15 05:04:30') |
+----------------------------------------------+
| 0 |
+----------------------------------------------+
1 row in set (0.00 sec)
mysql> SELECT UNIX_TIMESTAMP('1970-05-15 05:04:30');
+----------------------------------------------+
| unix_timestamp('1970-05-15 05:04:30') |
+----------------------------------------------+
| 11576070 |
+----------------------------------------------+
1 row in set (0.00 sec)समाधान: 1970 से पहले की डेटा के लिए DATETIME उपयोग करें (रेंज 1000-9999 वर्ष)। UNIX_TIMESTAMP केवल TIMESTAMP रेंज के लिए काम करता है।