在MySQL中将日期存储为unix时间戳或TIMESTAMP数据类型?

我需要在
MySQL数据库中存储日期(随时间).我希望能够格式化这些我喜欢的方式.那么在MySQL数据库中存储日期的最佳方法是什么? DATETIME类型,TIMESTAMP类型或简单的数字数据类型中的unix时间戳?我将使用
PHP检索日期. 最佳答案 通常,使用TIMESTAMP或DATETIME数据类型无关紧要.

>在旧版本中,TIMESTAMP为4个字节,DATETIME为8个字节.
>将DATETIME视为时钟图片;将TIMESTAMP视为全世界的瞬间.也就是说,如果您连接到同一个数据库,但是来自不同的时区,则DATETIME看起来会相同,但TIMESTAMP将根据时区进行调整.
> NOW(),选择PHP等,都兼容.
>两者都在外部被视为字符串,例如’2015-04-25 17:09:01′.
>由于TIMESTAMP存储为32位整数(但您没有看到),因此限制为~1970-2038.
>由于DATETIME是时钟时间,如果您切换到/从夏令时开始,每年将有两次缺失/额外时间.

是的,您可以使用UNIX_TIMESTAMP()并使用INT UNSIGNED,但是看到’2015 -…’不是更好吗? (那将是4个字节.)

点赞