Учитывая следующий JSON:
[
{
"json": {
"buildInfo": [
{
"first": "James",
"last": "d"
},
{
"first": "James2",
"last": "d2"
}
]
},
"status": 200
},
{
"json": {
"buildInfo": [
{
"first": "Jacob",
"last": "e"
},
{
"first": "Jacob2",
"last": "e2"
}
]
},
"status": 200
}
]
Я пытаюсь запросить ключ внутреннего списка json.buildInfo."last" для значения, чтобы затем извлечь число значений ключа, т.е. json.buildInfo.*."first". ОДНАКО я изо всех сил пытаюсь заставить это работать.
Я могу найти данные, используя оператор выравнивания...
[*].json.build[].last[contains(@,`d`)]
... но я не могу понять, как выполнить запрос, который затем позволит мне получить «первый» ключ списка дополнительной информации. В json без внутреннего списка в buildInfo я могу сделать что-то вроде
[?json.buildInfo.last==`d`].json.buildInfo.first
Переход к списку элементов buildInfo оказывается сложной задачей.
Может ли кто-нибудь дать мне руководство здесь?
Спасибо
d2
)]], но тогда я не уверен, как извлечь только один соответствующий блок, которому соответствует d2, как показано выше, чтобы вернуть весь блок buildInfo, содержащий его, который также включает другой. - person Gareth   schedule 06.12.2019