【发布时间】:2011-02-17 19:18:05
【问题描述】:
由于在 mysql 中 datetime 字段表示为字符串(我不确定它在内部是如何工作的),从性能的角度来看,将日期存储为 unix 时间戳不会更快吗?我不需要使用任何 mysql 原生日期函数,我要的是排序和选择数据的性能。
如果该列有索引,int 和 datetime 之间会有所不同吗?
谢谢
【问题讨论】:
标签: mysql performance
由于在 mysql 中 datetime 字段表示为字符串(我不确定它在内部是如何工作的),从性能的角度来看,将日期存储为 unix 时间戳不会更快吗?我不需要使用任何 mysql 原生日期函数,我要的是排序和选择数据的性能。
如果该列有索引,int 和 datetime 之间会有所不同吗?
谢谢
【问题讨论】:
标签: mysql performance
Timestamp 需要 4 个字节,而 datetime 每条记录需要 8 个字节。这意味着更小的索引和更好的性能,但不是在每种情况下:
【讨论】:
您可以使用 TIMESTAMP 数据类型,它在内部存储为 int:http://dev.mysql.com/doc/refman/5.1/en/datetime.html
【讨论】: