2012-06-04 123 views
0

我正在使用solr進行多面搜索。 我Solr中填充數據和典型的文件看起來像:Solr位置方面搜索

<doc> 
<str name="id">1</str> 
<date name="last_modified">2012-06-03T07:23:11.215Z</date> 
<str name="location">22.60325666,114.1371245</str> 
<int name="media_type">0</int> 
</doc> 

當我運行一個查詢: {!geofilt PT = 37.3320927,-121.90056663 d = 100元數=位置d = 5} 我收到2份文件。同樣,當我運行: {!geofilt pt = 37.3320927,-121.90056663 d = 100 sfield =位置d = 50} 我收到6個文件。

但是當我運行查詢:

http://localhost:8983/solr/select?sfield=location&pt=37.3320927,-121.90056663&facet.query={!geofilt%20d=10%20key=d10}&facet.query={!geofilt%20d=20%20key=d20}&facet.query={!geofilt%20d=50%20key=d50}&wt=xml&facet=true 

我得到迴應:

同樣爲:

http://localhost:8983/solr/select?sfield=location&pt=37.3320927,-121.90056663&facet.query={!geofilt%20d=10%20key=d10}&facet.query={!geofilt%20d=20%20key=d20}&facet.query={!geofilt%20d=50%20key=d50}&wt=xml&facet=true 

我得到迴應:

有我做錯了什麼?

+0

即使我有media_type定義爲,我仍然不能運行一個分面搜索:http:// localhost:8983/solr/select?q = *。*&rows = 0&facet = true&facet.query = media_type:1&facet.query = media_type:2 –

回答

0

我得到的東西通過查詢工作:

http://localhost:8983/solr/select?q=*:*&sfield=location&pt=37.3320927,-121.90056663&facet.query={!frange l=0 u=5}geodist()&facet.query={!frange l=5.001 u=20.0}geodist()& &facet.query={!frange l=20.001 u=100}geodist()&facet.pivot=media_type&wt=xml&facet=true&rows=0 

下一個問題是我怎麼添加了另一個方面的查詢? 具體而言,在這種情況下,我想用media_type分解結果。

+0

我相信Solr支持多個'fq ='查詢參數,所以您只需在URL中添加另一個。 –