Unix时间戳VS日期时间

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

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

基于此表查询:

  • 以格式添加记录时显示:2小时前,4周前,1年前等
  • 允许用户搜索任何日/月/年插入的记录。 因此,用户可能被允许选择仅查看2009年插入的记录。
  • 在这种情况下哪个更好--unix时间戳或日期时间?

    现在我正在使用这两种方式,但由于表格随着时间的推移会有数百万条记录,所以这两列可能会影响数据库的大小。

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

    你的建议?


    当你有选择时,我会说为mySQL日期去。

  • 您不必处理日期范围问题

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

  • 与日期相关的查询速度会快得多,特别是当您拥有数百万条记录时,因为您不必使用FROM_UNIXTIME() ,这在大型查询中可能很昂贵

  • 在必要时将DATE字段转换为UNIX时间戳是儿童游戏。


  • 我会选择mysql格式,只是因为mysql有很多日期时间函数,使用时间戳会花费你另一次转换。

    但由于表格随着时间的推移会有数百万条记录,因此两列都可能会影响数据库的大小。

    天啊。
    你真的关心4兆字节的空间吗?


    通过使用unix时间戳和MySQL from_unixtime()函数将结果转换为需要的日期时间格式,您可以获得两全其美的效果。

    链接地址: http://www.djcxy.com/p/25101.html

    上一篇: Unix timestamp VS datetime

    下一篇: MySQL: What's the best to use, Unix TimeStamp Or DATETIME