Я использую ES версию 5.6.У меня есть документ, как показано ниже, в ES.
{
"swType": "abc",
"swVersion": "xyz",
"interfaces": [
{
"autoneg": "enabled",
"loopback": "disabled",
"duplex": "enabled"
},
{
"autoneg": "enabled",
"loopback": "disabled",
"duplex": "enabled"
}
]
}
Я хочу выполнить поиск по всем полям, для которых «включено».
Я пробовал следующие запросы, но они не работали.
curl -XGET "http://esserver:9200/comcast/inventory/_search" -H 'Content-Type: application/json' -d'
{
"query": {
"match":{
"_all": "enabled"
}
}
}'
curl -XGET "http://esserver:9200/comcast/inventory/_search" -H 'Content-Type: application/json' -d'
{
"query": {
"query_string": {
"query": "enabled",
"fields": ["*"]
}
}
}'
Носледующий запрос работал
curl -XGET "http://esserver:9200/comcast/inventory/_search" -H 'Content-Type: application/json' -d'
{
"query": {
"match":{
"_all": "abc"
}
}
}'
Итак, внешний вид _all
соответствует только полям верхнего уровня, а не вложенным полям.Есть ли способ запросить текст, содержащийся во всех полях, включая вложенные.Я не хочу явно указывать имена вложенных полей.Я ищу вид глобального поиска, где я хочу найти «текст» в любом месте документа.
Спасибо.