一尘不染

在CouchDB中存储日期时间(时间戳)的最佳方法是什么?

json

我在想这样的UTC时间字符串2011-01-26 21:41:09 +0000可能是可以的,因为如果在视图键中使用它们,则可以正确排序,但是存储时区(例如2011-01-26 16:41:09 -0500)会使文档更具可读性。从可读性的角度来看,将日期转换为纪元整数似乎没有什么吸引力,但对于性能而言可能是最好的选择(或者是否有所作为?)。这里推荐的做法是什么?


阅读 239

收藏
2020-07-27

共1个答案

一尘不染

时间是一维的东西。时间戳加上时区是二维的,描述了时间点和位置。Couch视图是一维的(但不是GeoCouch插件),因此将其存储在公共区域(UTC)是明智的。

可能最适合未来的格式是自然按时间顺序排序的字符串。也许最方便的格式是JSON2输出的格式:

> a = new Date();
Thu Jan 27 2011 18:40:52 GMT+0700 (ICT)
> JSON.stringify(a)
"2011-01-27T11:40:52.280Z"
2020-07-27