mysql 时间类型

日期类型        存储空间      日期格式                日期范围
------------  ---------  --------------------- -----------------------------------------
datetime       8 bytes  YYYY-MM-DD HH:MM:SS  1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
timestamp    4 bytes  YYYY-MM-DD HH:MM:SS  1970-01-01 00:00:01 ~ 2038
date             3 bytes  YYYY-MM-DD            1000-01-01          ~ 9999-12-31
year             1 bytes  YYYY                  1901                ~ 2155

在 MySQL 中创建表时,对照上面的表格,很容易就能选择到合适自己的数据类型。不过到底是选择 datetime 还是 timestamp,可能会有点犯难。这两个日期时间类型各有优点:datetime 的日期范围比较大;timestamp 所占存储空间比较小,只是 datetime 的一半。

另外,timestamp 类型的列还有个特性:默认情况下,在 insert, update 数据时,timestamp 列会自动以当前时间(CURRENT_TIMESTAMP)填充/更新。

ps:现在很多开源系统也有用int(11)来存储时间戳,查询库,排序效率高,占用空间小

  datetime 存储固定不变的时间较好

原文地址:https://www.cnblogs.com/duoduoxi/p/5195473.html