在es中path存储的数据为 XX/SS/DD这种格式, 通过es的DSL语句进行聚合查询时:
{
"from": 0,
"size": 1,
"query": {...},
"aggregations": {
"path": {
"terms": {
"field": "path"
}
}
}
}
返回的结果会将XX/SS/DD拆分成 XX SS DD 这几种key值。但具体需求需要对XX/SS/DD进行分组。
解决方法:
更改索引,具体更改方法,在上方链接中strglee的回答中(再次感谢strglee),将该字段改成keyword后,DSL语句改成如下形式
{
"from": 0,
"size": 1,
"query": {...},
"aggregations": {
"path": {
"terms": {
"field": "path.keyword"
}
}
}
}
至此,返回的key值为XX/SS/DD 形式,不进行分词。