当我对字符串字段(使用空白标记化器)进行术语聚合时,我会得到每个单词(标记)的结果,但我需要整个字符串的结果。 如何对字符串字段进行聚合,例如条件,但是按整个字符串进行分组输出,而不是使用标记?
我已经看到了这个解决方案: ElasticSearch term aggregation Terms aggregation based on unique key 但它们基于关键字标记化器
我不能使用关键字标记器,因为我在索引时不会应用停用词过滤器
答案 0 :(得分:3)
我遇到了同样的问题,来到这里寻找解决方案。
然后我突然明白了。那是一个.raw(未分析)字段,它起作用了。解决方案是使用它。
所以汇总来自:
{
"aggs": {
"keys": {
"terms": {
"size": 0,
"field": "key"
}}}}}
为:
{
"aggs": {
"keys": {
"terms": {
"size": 0,
"field": "key.raw"
}}}}}