Использование условия агрегирования .
Это выглядит так:
index: 'test',
body: {
"aggs": {
"uniq_gender": {
"terms": {"field": "Gender"}
}
}
},
Ответ будет выглядеть примерно так:
{
"uniq_gender": {
"doc_count_error_upper_bound": 0,
"sum_other_doc_count": 0,
"buckets": [
{
"key": "male",
"doc_count": 55
},
{
"key": "female",
"doc_count": 38
},
{
"key": "other",
"doc_count": 1
}
]
}
}
Важно отметить, из документов:
Термины агрегации должны представлять собой поле типа ключевого слова или любой другой тип данных, подходящий для агрегирования сегментов. Чтобы использовать его с текстом, вам нужно включить fielddata.
То есть, если ваше гендерное поле проиндексировано в виде текста, вы должны установить для поля fielddata значение true в отображении, узнайте, как это сделать здесь .