у меня есть отображение, которое выглядит следующим образом для ElasticSearch 2,2:поиска ElasticSerach для таких же идентификатора в нескольких вложенных объектах
PUT /index/test_type/_mapping
{
"test_type":{
"properties":{
"nested_one":{
"type":"nested",
"properties":{
"some_id":{
"type":"string"
}
}
},
"nested_two":{
"type":"nested",
"properties":{
"some_id":{
"type":"string"
}
}
}
}
}
Я должен создать поиск some_id, которые появляются как свойство как nested_one и nested_two внутри объекта test_type (и да, я должен сохранить эту оболочку test_type).
Таким образом, запрос будет выглядеть примерно так: test_type.nested_one.some_id = 1 ИЛИ test_type.nested_two.some_id = 1 return elasticId (обратите внимание, что some_id здесь то же самое).
Я нашел документацию для поиска вложенных типов данных и с помощью «или», но ничего не может найти одно и то же свойство в нескольких вложенных объектах внутри объекта через «или». Мой вопрос: возможно ли это с этим отображением?
очень очень близко я думаю, но nested_two.some_id и nested_one.some_id такое же идентификатор 80. Таким образом, я должен получить удар, если some_id: 80 в ЯВНО nested_one или nested_two! – arturobelano
да, это будет работать именно так. вы можете запустить запрос с 101 вместо 80 – user3775217
@arturobelano отредактировал сообщение с измененным запросом и ответом. спасибо – user3775217