#php #elasticsearch #aggregation
#php #elasticsearch #агрегация
Вопрос:
У нас есть много данных, в которых есть логическое значение, которое определяет, являются ли данные действительными (отображают их) или нет. Это, например, такие навыки, как PHP и Java. Проблема заключается в запросе списка пользователей, у которых есть навыки, которые не активны, из-за этого в агрегациях Elasticsearch появятся эти навыки. Как-то я могу сказать это для агрегаций, которые я не хочу отображать? Мой текущий код, который не работает:
"aggs":{
"base":{
"filter":{
"term":{
"active":"yes"
}
},
"aggs":{
"skills":{
"terms":{
"field":"skill",
"size":10000,
"order":{
"_term":"asc"
}
}
}
}
}
},
Я попытался вывести фильтр за пределы agg, но в этом случае ES не показывал пользователей, у которых нет неактивного навыка.
Комментарии:
1. Я не совсем понял вопрос, не могли бы вы привести пример?
2. Вам нужно поместить фильтр в агрегации. На этой странице приведен пример elastic.co/guide/en/elasticsearch/reference/current /…