一尘不染

Unix时间戳vs日期时间

sql

这个问题已经在这里有了答案

9年前关闭。

可能重复:
日期时间与时间戳?

我有一个Mysql表,其中有column add_date。它跟踪记录添加到数据库中的日期/时间。

基于此表的查询:

  1. 显示添加记录的时间:2小时前,4周前,1年前,等等
  2. 允许用户搜索在每天/每月/每年中插入的记录。因此,可以允许用户选择仅查看2009年插入的记录。

在这种情况下哪个更好-Unix时间戳还是日期时间?

现在,我同时使用这两个列,但是由于该表随时间推移将具有数百万条记录,因此同时具有这两个列可能会影响数据库的大小。

Unix时间戳似乎更适合2 hours用PHP转换为以前的格式,并且它与时区无关。但是datetime具有更好的可读性,并且使查询特定日期/时间/年份看起来更容易。

你的建议?


阅读 138

收藏
2021-03-17

共1个答案

一尘不染

如果可以选择的话,我想说说mySQL的日期。

  • 你不会有照顾的日期范围问题小号

  • 您可以使用mySQL的日期函数(BETWEEN(), DATE_ADD等)轻松查询时间跨度

  • 与日期相关的查询将更快,尤其是当您有数百万条记录时,因为您不必使用FROM_UNIXTIME()大型查询中昂贵的记录

  • 在必要时将DATE字段转换为UNIX时间戳是孩子的事。

2021-03-17