2015-04-06 50 views
0

所有:如何做一個分組(或範圍查詢)在Solr的小

[更新]感謝安德烈的回答,目前我使用這種方式:

如果你也有送facet.mincount = 1那麼開始界限只是一個 指示,因爲Solr將只返回那些內部至少有1個文檔的值(即範圍) 。因此,例如,您可以將 指示爲非常低的值作爲開始。

注:這只是證明了我的情況下工作,所以用你的判斷

&facet=true&facet.range=createDate&facet.range.gap=%2B2DAY&facet.range.end=NOW&facet.range.start=NOW-1000DAY&facet.mincount=1


我非常新到Solr方面。假設我有一些文件,其中有CREATEDATE:

"2015-03-23T17:59:00Z", 
"2015-03-23T22:13:00Z", 
"2015-03-17T20:48:00Z", 
"2015-03-19T17:43:00Z", 
"2015-03-19T21:58:00Z", 
"2015-03-16T19:13:00Z", 
"2015-03-16T22:26:00Z", 
"2015-03-13T21:33:00Z", 
"2015-03-13T21:39:00Z", 
"2015-03-13T23:27:00Z", 
"2015-03-16T16:46:00Z", 
"2015-03-18T17:44:00Z", 
"2015-03-18T18:10:00Z", 
"2015-03-18T18:11:00Z" 
....... 

我的問題是:

[1]如何獲得由天的結果範圍是多少?

[2]如何得到由WEEK分組的結果結果(或讓我們說7天)?

感謝

回答

1

這就是所謂的範圍小面。我建議你閱讀Solr的維基但在此期間:

facet.range =(字段名)
facet.range.start =(開始日期或值)
facet.range.end =(結束日期或值)
facet.range.gap =(區間值或表達式)

在您的情況下,您應該使用+ 1DAY或+ 7DAYS作爲facet.range.gap。 還有其他的參數,所以它更好,如果你看看維基

+0

謝謝,但我不太明白你是如何得到這個查詢的日期範圍? – Kuan

+0

從wiki,它似乎face.range參數是指定哪個字段來搜索,而不是從facet.range.start獲得價值 – Kuan

+0

是的抱歉,我的回覆是逃脫 – Andrea