我正在使用SOLR 2.5.1
我有一个字段type
。我正在使用SOLR Java驱动程序查询。我只在查询中提取type
字段。
注意:查询字段和fl(在我的情况下为type
)不同
说响应就像是
{
"response": {
"numFound": 200,
"start": 0,
"docs": [
{
"type": "A"
},
{
"type": "B"
},
{
"type": "A"
},
{
"type": "A"
},
{
"type": "C"
},
{
"type": "D"
},
{
"type": "A"
},
{
"type": "B"
},
{
"type": "C"
},
{
"type": "B"
}
]
}
}
我需要对输出进行分组并找到发生的次数。输出如:
"A":4, "B":3, "C":2, "D":1
我可以在java代码中处理它。但有没有办法分组和指望一个特定的领域?
答案 0 :(得分:1)
这称为faceting,并为您提供每个索引术语的计数。如果要生成完整文本的计数(即,您想要计算New York
而不是New
和York
),请务必将每个字词保留为单个标记。字符串字段通常非常适合作为要面对的字段类型。
对于SolrJ集成,在查询中使用.addFacetField("type")
,然后可以在响应对象上使用getFacetField("type")
。