为什么我在将日期(如"1965-05-15")转换为 TIMESTAMP 时输出为 0(零)?
mysqlmysqli database
众所周知,借助 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)