众所周知,借助 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)
登录后复制
以上就是为什么我在将“1965-05-15”等日期转换为 TIMESTAMP 时得到输出 0(零)?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!