Solr faceting查询语法

时间:2009-05-08 13:44:43

标签: solr

我想在多重评估字段(无文档)上过滤分面计数

例如:

select?q=*:*&rows=5&facet=true&facet.limit=5&facet.field=productID&facet.sort=true

有没有机会过滤我的facet.field productId上的点数?

鉴于上一个查询我得到的是:

<lst name="facet_counts">
<lst name="facet_queries"/>
−
<lst name="facet_fields">
−
<lst name="productID">
**<int name="EG7SpTw03mJ25vxS5jcB24">603</int>**
<int name="E53OBaX5hjGDAKzbHHaDG1">573</int>
<int name="sSLMrsA0wjLF8iWRAbzNq4">415</int>
<int name="ijcfPOTpg3eeGoXSW8h8L5">336</int>
<int name="Lij0a3kVgQzLxtOMgOXb06">296</int>
</lst>
</lst>
<lst name="facet_dates"/>
</lst>

我只想过滤查询以获得如下结果:

          -           -          603     573     415     336     296                    

 <lst name="facet_counts">
    <lst name="facet_queries"/>
    −
    <lst name="facet_fields">
    −
    <lst name="productID">
    <int name="E53OBaX5hjGDAKzbHHaDG1">573</int>
    <int name="sSLMrsA0wjLF8iWRAbzNq4">415</int>
    <int name="ijcfPOTpg3eeGoXSW8h8L5">336</int>
    <int name="Lij0a3kVgQzLxtOMgOXb06">296</int>
    <int name="Lij0a3kVgQzLxtOMYERESW">293</int>
    </lst>
    </lst>
    <lst name="facet_dates"/>
    </lst>

只想按productId过滤:EG7SpTw03mJ25vxS5jcB24 ......

THX

1 个答案:

答案 0 :(得分:5)

好吧,我找到了解决方案,它只是使用了facet.prefix参数

选择Q = &安培;行数= 5和;小面=真安培; facet.limit = 5&安培; facet.field =的productID&安培; facet.sort =真安培; facet.prefix = EG7SpTw03mJ25vxS5jcB24

我得到的输出是:

<lst name="facet_counts">
<lst name="facet_queries"/>
−
<lst name="facet_fields">
−
<lst name="taxonUUID">
<int name="EG7SpTw03mJ25vxS5jcB24">603</int>
</lst>
</lst>
<lst name="facet_dates"/>
</lst>

我要提出一个关于这个话题的新的更复杂的问题......