28

さて、私は間隔の日付範囲をマッハするsolrドキュメントを返すためのいくつかのメソッドをコーディングしています。ドキュメントはISO8601形式で日付フィールドを保存しました。

何か案が?

どうも

4

3 に答える 3

68

いくつかのドキュメントと例については、 SOLR wikiを確認してください。

タイムスタンプ:[* TO NOW]

作成日:[1976-03-06T23:59:59.999Z TO *]

作成日:[1995-12-31T23:59:59.999Z から 2007-03-06T00:00:00Z]

pubdate:[今-1年/今日まで/日+1日]

作成日:[1976-03-06T23:59:59.999Z から 1976-03-06T23:59:59.999Z+1YEAR]

作成日:[1976-03-06T23:59:59.999Z/YEAR TO 1976-03-06T23:59:59.999Z]

これが役に立てば幸いです、デビッド。

于 2009-04-28T08:25:49.080 に答える
32

ここでは、範囲クエリの詳細を確認できます

https://cwiki.apache.org/confluence/display/solr/The+Standard+Query+Parser

いくつかの例

1. Exact Matching: q= modify_date:"2012-07-06T9:23:43Z"
2. Less than: q= modify_date:{* TO 2012-07-06T9:23:43Z } 
3. More than: q= modify_date:{ 2012-07-06T9:23:43Z TO *}
4. Less or equal than: modify_date:[* TO 2012-07-06T9:23:43Z] 
5. More or equal than: modify_date:[ 2012-07-06T9:23:43Z TO *]

角括弧 [ ] は、上限と下限を含む値に一致する包括的な範囲クエリを示します。

中かっこ { } は、上限と下限の間の値に一致するが、上限と下限自体を除外する排他的範囲クエリを示します。

于 2013-10-04T07:35:38.370 に答える
4

スキーマのフィールドが Modified_Date であると仮定すると、次の範囲クエリを適用できます。

Modified_Date:[2015-04-20T07:49:00Z TO *]
Modified_Date:[2015-04-20T07:49:00Z TO 2015-05-
20T07:33:00Z]
Modified_Date:[2015-04-20T07:49:00Z TO NOW]
Modified_Date:[NOW-7DAY/DAY TO NOW]
Modified_Date:"2015-05-27T10:04:00Z"
Modified_Date:NOW
Modified_Date:NOW/DAY
Modified_Date:NOW/HOUR
Modified_Date:NOW-1YEAR
Modified_Date:NOW-2YEARS
Modified_Date:NOW-3HOURS-30MINUTES
Modified_Date:"2008-07-04T13:45:04Z/DAY"
Modified_Date:[* TO NOW]
Modified_Date://DAY
Modified_Date://HOUR
Modified_Date:[ * 2015-04-20T07:49:00Z ]
Modified_Date:[2015-04-20T07:49:00Z *]
于 2015-05-29T06:17:27.027 に答える