Я хочу отфильтровать результаты, выдаваемые ES внутри массива. мы можем сказать, что документ содержит массив случайных данных. Можно ли отображать документ с конкретными результатами в этом массиве?
Вот мой запрос
GET /products/_search
{
"query": {
"bool" : {
"must" : [
{ "match_phrase" :{ "shop": "shop_url" }},
{"match_phrase" :{"id" : "000111222" }}
]
}
},
"_source": ["title","audiences"]
}
результаты выглядят нормально
{
"_source" : {
"audiences" : [
{
"store_id" : "19",
"account_id" : 115,
"fb_id" : 111111,
"name" : "name it ",
"rule" : "{}",
"source_id" : 111111,
"type" : "TYPE IT"
},
{
"store_id" : "19",
"account_id" : 114,
"fb_id" : 222222,
"name" : "name it ",
"rule" : "{}",
"source_id" : 22222,
"type" : "TYPE IT"
}
],
"title" : "title here"
}
}
РЕЗУЛЬТАТ , который я ищу. (фильтр по полю внутри массива)
{
"_index" : "products",
"_type" : "_doc",
"_id" : "744376893505",
"_score" : 1.0006012,
"_source" : {
"audiences" : [
{
"store_id" : "19",
"account_id" : 115,
"fb_id" : 111111,
"name" : "name it ",
"rule" : "{}",
"source_id" : 111111,
"type" : "TYPE IT"
}
],
"title" : "title here"
}
}