2011-06-08 51 views
1

我们正在使用SOLR 3.1并面对许多日期问题。SOLR 3.1 - 日期问题

我们使用的是数据库Sql Server 2005.所以,当我们从数据库导入数据到集合时,我们遇到的第一个问题是,数据库和集合日期有4小时不同。例如,如果数据库的日期类似于2011年6月2日上午10:00:00 PM,那么它将出现在2011-06-03T02:00:00Z这样的集合中。我只是使用数据库字段来导入。没有日期格式或任何其他功能介入之间。

我们如何按日期对记录进行排序?现在,我使用它像这样(*:*)&sort=resumeupdate+desc来获取所有记录并按日期排序。但它没有正确排序。

回答

2

Solr始终以UTC时间存储其日期。您需要通过将日期转换为UTC来导入日期,然后在排序/过滤时将时间戳转换为UTC。 Solr返回给您的日期将采用UTC时间,因此您需要将它们转换为您所在的时区。有关更多详细信息,请参阅this issue

否则,如果一切都是UTC格式,那么它应该正确排序。