Я новичок в упругом поиске и пытаюсь формировать запросы. Я столкнулся с некоторой проблемой при извлечении информации из эластичного хранилища. Ниже я пытаюсь сделать групповой в эластичный поисковый запрос ..
Допустим, у меня есть следующие данные:
[{
"a" : {
"b" : "xxx",
"c" : "yyy"
},
"l" : {
"m" : "zzz",
"n" : "sss"
}
},
{
"a" : {
"b" : "xxx",
"c" : "qqq"
},
"l" : {
"m" : "ttt",
"n" : "jjj"
}
}
]
Я хотел бы отобразить все строки, которые имеют значение «xxx» для ключа «b» в объекте «a».
В приведенном выше у меня есть две строки, которые соответствуют моим потребностям. Поэтому я хотел бы отобразить два выше. Это означает, что это «группа по a.b»
Как мне добиться этого гибкого поискового запроса? Поскольку ключ, который я ищу для группировки - это вложенный ключ, у меня возникают проблемы при формировании запроса.
Любые предложения будут оценены.
РЕДАКТИРОВАТЬ 1:
То, что я ищу, это не просто, если ключ «a.b» имеет значение «xxx». Я хочу сделать группу по. Поэтому, если есть две записи в «a.b» со значением «xxx» и еще две записи в «a.b» со значением «kkk», я бы хотел видеть их как две группы.
Как и в этом случае, результатом должны быть два объекта json, каждый из которых содержит результаты своей конкретной группы.
что-то вроде ниже:
{
{
{
"a" : {
"b" : "xxx",
"c" : "yyy"
},
"l" : {
"m" : "zzz",
"n" : "sss"
}
},
{
"a" : {
"b" : "xxx",
"c" : "qqq"
},
"l" : {
"m" : "ttt",
"n" : "jjj"
}
}
},
{
{
"a" : {
"b" : "kkk",
"c" : "..."
},
"l" : {
"m" : "___",
"n" : "---"
}
},
{
"a" : {
"b" : "kkk",
"c" : "..."
},
"l" : {
"m" : "___",
"n" : "---"
}
}
}
}