以下是我的汇总。
{
"size": 0,
"aggs": {
"cities": {
"terms": {
"field": "city.raw"
}
}
}
映射
"properties": {
"state" : {
"type": "string",
"fields": {
"raw" : {
"type": "string",
"index": "not_analyzed"
}
}
}
效果很好。但考虑到区分大小写,它将字段分组。
例如。
{
"key": "New York",
"doc_count": 45
},
{
"key": "new york",
"doc_count": 11
},
{
"key": "NEW YORK",
"doc_count": 44
}
我希望结果像这样
{
"key": "new york",
"doc_count": 100
}
答案 0 :(得分:2)
我认为问题在于您使用索引字符串的原始版本
city.raw
您的归档版本没有? 如果您还将该字段的映射放在示例中,那应该很棒。
更新:U应该根据您的需要使用自定义分析器。 tokenizer应该是关键字,过滤器应该是小写的。然后使用此分析器索引数据。然后应该工作。
"analyzer": {
"my_analyzer": {
"type": "custom",
"tokenizer": "keyword",
"filter": "lowercase"
}
}