2011-04-26 26 views
1

我試圖使用solrj得到一個方面查詢的結果,但是看起來無論我是否添加方面查詢都沒關係。無論如何,我都會得到相同的文檔列表。如何僅使用solrj獲取facet.query結果?

所以這個查詢返回相同的文檔列表...

query.setQuery(searchString); 
    query.setFacet(true); 
    query.addFacetField("CATNAME_STR"); 
    query.addFacetQuery("CATNAME_STR:" + facetName); 

......與此查詢

query.setQuery(searchString); 
    query.setFacet(true); 
    query.addFacetField("CATNAME_STR"); 

唯一不同的是我能得到的面與查詢匹配的文檔數response.getFacetQuery();

我期待它能像

http://localhost:8983/solr/select/?q=*%3A*&version=2.2&start=0&rows=10&indent=on&facet=on&facet.field=CATNAME_STR&fq=CATNAME_STR:Erasmus 

任何想法?

謝謝。

通過我使用Solr的版本3.1.0和Solr核-3.1.0

+0

可以運行小提琴手或東西看看solr的實際要求是什麼樣的? – 2011-04-26 18:10:32

+0

@Aaron D - 它看起來像一個方便的工具,但有一個相當於它的Linux。此外,Firebug也提供了關於標題的相當不錯的主意。 – slhsen 2011-04-27 12:20:38

回答

5

事實證明的方式fq=CATNAME_STR:Erasmus並不意味着query.addFacetQuery("CATNAME_STR:Erasmus")而是query.addFilterQuery("CATNAME_STR:Erasmus")