我創建了一個集中使用Solr(5.2.1)分面功能的搜索應用程序。一個要求是限制由指定字段的前綴返回的構面的數量。單個分面字段上的多個facet.prefix
標準的Solr查詢語法非常適用於單前綴值:
/select?q=*%3A*&rows=0&wt=json&indent=true&facet=true&facet.field=DocumentKind&f.DocumentKind.facet.prefix=faq
輸出:
"facet_counts": {
"facet_queries": {},
"facet_fields": {
"DocumentKind": {
"faq": 1523
}
...
不幸的是這不工作時,我必須用更多的限制賽場上的面比一個前綴:
/select?q=*%3A*&rows=0&wt=json&indent=true&facet=true&facet.field=DocumentKind&f.DocumentKind.facet.prefix=manual&f.DocumentKind.facet.prefix=faq
我預計它會返回類似這樣的內容:
"facet_counts": {
"facet_queries": {},
"facet_fields": {
"DocumentKind": {
"faq": 1523,
"manual": 2366
}
...
但它給出了與以前相同的輸出。
在上面的示例中,我匹配整個構面值,但在實際使用情況下,我確實必須匹配前綴。爲了簡潔起見,我展示了這個例子。
我可以在我的應用程序中對此進行過濾,但Solr返回的數據大小非常重要。
THX!這正是我所期待的 – Marek