是否使用YYYYMMDDHHmmss作为日期而不是unix时间戳

时间:2014-05-25 19:44:51

标签: mongodb timestamp backend unix-timestamp

对于后端人来说,这可能是一个愚蠢的问题,但我是这个领域的新手。我正在使用带有mongoDB的node.js进行服务,如果使用YYYYMMDDHHmmss字符串格式来保存日期有任何缺点,我很好奇。

我知道另一种方法是使用unix时间戳,但问题是乍一看并不容易。

你会推荐什么?

提前致谢!

1 个答案:

答案 0 :(得分:1)

我认为第三种选择更好,使用内置的Date格式。它将日期存储为64位数字,表示自纪元以来的毫秒数(如Unix纪元时间1000)。然而,它具有大量内置支持,可转换为可显示格式。大多数驱动程序都支持转换为该格式或从该格式转换。此外,MongoDB聚合框架直接支持它,这大大简化了按日期,月份,年份等的汇总报告。

mongo shell非常支持内置日期格式:

http://docs.mongodb.org/manual/core/shell-types/

聚合框架也是如此:

http://docs.mongodb.org/manual/reference/operator/aggregation-date/

你可以在这里http://mongodb.github.io/node-mongodb-native/api-articles/nodekoarticle1.html#mongo-db-data-types看到日期格式

我个人犯了存储自定义日期格式的错误,然后处理了报告,分组和转换方面的困难。我现在总是从内置的日期格式开始,只有在其他需要它时才会偏离。

  

直接映射到Javascript日期