为什么在 Elasticsearch 中我们有“Z” 在日期字段的末尾?
例如:
2016-05-16T00:00:00.000Z
这是什么意思?
这东西有用吗?
它有害吗?
我可以摆脱它吗?
joda时间呢?
最佳答案
What does it mean?
“Z”表示 UTC。
引用资料:
https://www.w3.org/TR/NOTE-datetime
尽量不要存储本地日期。如果你想找到关于日期的好帖子以及为什么你应该使用 UTC 检查 this thread .
Is this something useful for anything?
这非常有用,将所有日期存储在 UTC 中可以轻松地将日期从区域设置转换为区域设置。它还允许日期比较和日期可视化保持一致。
Is it harmful?
没有。
Can I get rid of it?
如果你愿意?我不建议这样做......这有点像从交易中删除货币字段。交易没有任何意义。
另一个带日期的例子:
我在 2016 年 12 月 24 日下午 1 点调用我在 X 国家的 friend (提前 6 小时)。 对他来说是晚上 7 点。 所以我们有两个本地日期时间。
给我一个:
1pm December 24th 2016 in London
一个给我的 friend :
7pm December 24th 2016 in Country X
如果我删除“在...”部分,这两个部分将成为两个时间实例,彼此相隔 5 小时。这意味着我们不可能通过电话交谈?对吧?
不,因为它们在时间上是相同的实例,跨越两个语言环境。
What about joda time?
那又怎样呢?...
希望对您有所帮助。
关于java - Elasticsearch 中日期末尾的 Z 是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37148899/