我应该在“小时”时间戳中转换Unix时间戳吗?

时间:2012-10-13 22:10:09

标签: php mysql datetime

我正在使用PHP和MySQL。

每次我的一个用户完成给定的操作时,我需要存储一个unix时间戳。我只需要每小时的细节水平。我有什么理由不通过存储(integer)(time()/3600)而不是全时间戳来减少存储空间吗?我需要对每个用户的每个会话进行多次查询。

如果按原样保存时间戳,我打算将其存储为MySQL中的INT。我需要创建一个结合了userID和时间戳的索引。

如果我将时间戳转换为数小时,我可以将其存储为MySQL中的MEDIUMINT

2 个答案:

答案 0 :(得分:1)

好。一个原因:除非将时间戳保存为字符串,否则我们将在2038年过后,实际上不会占用更少的空间。

答案 1 :(得分:0)

通常,如果您在表上插入的时间戳数据少于5毫秒,则会减少数据库中的空间。换句话说,您不需要将性能另存为数据库中的unsigned(10)整数,而不是时间戳或日期/时间。这样可以更快地生成索引和搜索数据。

相关问题