0

I want to get all results AFTER a given date, can you do this with solr?

(http://lucene.apache.org/solr/)

Right now the results are search the entire result set, I want to filter for anything after a given date.

Update This isn't working for me yet.

My returned doc:

trying:

http://www.example.com:8085/solr/select/?q=test&version=2.2&start=0&rows=10&indent=on&indexed_at:2009-08-27T13%3A15%3A27.73Z

<doc>
<str name="apptype">Forum</str>
<str name="collapse">forum:334</str>
<str name="content"> testing </str>
<str name="contentid">357</str>
<str name="createdby">some_user</str>
<str name="date">20090819</str>
<str name="dummy_id">1</str>
<int name="group">5</int>
<date name="indexed_at">2009-08-25T16:48:45.121Z</date>
<str name="rating">000.0</str>
<str name="rawcontent"><p>testing</p></str>
−
<arr name="roles">
<str>1</str>
<str>2</str>
<str>3</str>
<str>4</str>
<str>14</str>
<str>15</str>
<str>16</str>
</arr>
<int name="section">79</int>
<int name="thread">334</int>
<str name="title">testing</str>
<str name="titlesort">testing</str>
<str name="type">forum</str>
−
<str name="unique_id">
BLAHBLAH|357
</str>
<str name="url">/blahey/f/79/p/334/357.aspx#357</str>
<str name="user">21625</str>
<str name="username">some_user</str>
</doc>
4

3 回答 3

4

是的,您可以假设您有一个包含要过滤的日期值的字段。然后你做

yourdatefield:[2008-08-27T23:59:59.999Z TO *] 

示例 url 将是 localhost:8983/solr/select?q=yourdatefield: [2008-08-27T23:59:59.999Z TO *]

您想将日期部分作为查询提交,因此在 q 的值中

localhost:8983/solr/select/q=(text:test+AND+indexed_at:`[2009-08-27T13:A15:A27.73Z TO *`])

所以整个查询都包含在 q 查询字符串参数中。

日期格式为 ISO 8601。

于 2009-08-26T23:16:48.770 回答
2

您可以使用以下方法为文档添加自动时间戳:

<field name="timestamp" type="date" indexed="true" stored="true" default="NOW" multiValued="false"/>

在 schema.xml 中。默认模式已将其注释掉,因此如果您复制了默认模式,您只需取消注释即可。

您可以添加它并使用 olle 建议的搜索模式来查找在某个日期之后索引的文档。(您必须使用时间戳或您在 xml 中命名该字段的任何名称来更新您的日期字段。

于 2009-08-26T23:34:20.827 回答
0

您需要创建一个比较日期的查询,这里是查询的语法: http ://wiki.apache.org/solr/SolrQuerySyntax

以下是如何在查询中进行日期比较:http: //lucene.apache.org/solr/api/org/apache/solr/util/DateMathParser.html

于 2009-08-26T23:22:22.520 回答