【发布时间】:2013-03-29 21:05:57
【问题描述】:
我有一个地理空间索引为location: {lat:XX.XXXX, lng:XX.XXXX} 的文档集合。但我希望它们由 TimeZone 输出。
我正在考虑将地理位置转换为时区,并有一个基于此的索引,但我也不知道该怎么做,或者无论如何使用地理空间索引是否会更容易。
【问题讨论】:
-
解决方案取决于您需要如何订购时区。如果它只是通常的东到西(反之亦然),那么我在下面使用 UTC 偏移量的答案应该会有所帮助。如果您需要进行 DST 调整,它会变得有点复杂:您可以更新您的 TZ 集合或为每个 TZ 创建多个文档,其中包含开始/结束日期范围和相应的 UTC 偏移量。您可以先根据当前时间进行过滤,然后您将获得正确的(经 DST 调整的)TZ 顺序。
-
@Sim - 另见this community wiki entry
标签: ruby mongodb geolocation timezone