JMESPath - 无法在另一个列表中查询列表中的值
JMESPath - Unable to query a value in a list within another list
给出以下 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`)]
...但我不知道如何对此执行查询,然后允许我获取额外信息列表 "first" 键。在 buildInfo 上没有内部列表的 json 上,我可以做类似
的事情
[?json.buildInfo.last==`d`].json.buildInfo.first
事实证明,切换到 buildInfo 项目列表具有挑战性。
有人可以给我指导吗?
谢谢
好的,这可行 - 但不确定我知道为什么...
[?json.buildInfo[?contains(last,'d2')]].json.build_info[]|[?last=='d'].first
给出以下 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`)]
...但我不知道如何对此执行查询,然后允许我获取额外信息列表 "first" 键。在 buildInfo 上没有内部列表的 json 上,我可以做类似
的事情[?json.buildInfo.last==`d`].json.buildInfo.first
事实证明,切换到 buildInfo 项目列表具有挑战性。
有人可以给我指导吗?
谢谢
好的,这可行 - 但不确定我知道为什么...
[?json.buildInfo[?contains(last,'d2')]].json.build_info[]|[?last=='d'].first