【发布时间】:2022-02-09 04:47:19
【问题描述】:
基于下面的 JSON,我试图为持有 PickNrRangeBegin==558 和 PickNrRangeEnd==559 的孩子提取“DrugReleaseId”。
"Data":[
{
"DrugReleaseId":"8a7bb731-8802-11ec-8ba3-00505699a442",
"Filters":[
{
"BulkBatch2LotIds":null,
"DrugCodeId":"1",
"DrugDescription":"Druggy - 10mg 28 tablets",
"PickNrRangeBegin":558,
"PickNrRangeEnd":559,
"Quantity":null,
"TemporaryUnavailable":null,
"LotIds":[
"ed65aa20-e3b7-11eb-8b9b-00505699a442"
]
},
{
"BulkBatch2LotIds":null,
"DrugCodeId":"2",
"DrugDescription":"Placebo - 10mg 28 tablets",
"PickNrRangeBegin":25505,
"PickNrRangeEnd":25506,
"Quantity":null,
"TemporaryUnavailable":null,
"LotIds":[
"98025036-e92c-11eb-8b9b-00505699a442"
]
}
],
"DepotId":"01",
"LotId":"b7179175-e92c-11eb-8b9b-00505699a442",
"LabelGroupId":null,
"CreatedByUserId":"8509960e-8181-4428-89bd-367c0be29a9a",
"CreatedUtcDateTime":"Mon Feb 07 2022 00:00:00",
"Status":0,
"ProcessedByUserId":null,
"ProcessedUtcDateTime":null
}
我只需要 $..Data.[?(@.PickNrRangeBegin=='558') && ?(@.PickNrRangeBegin=='559')] 但这将返回所有包含的元素:
"BulkBatch2LotIds": null,
"DrugCodeId": "1",
"DrugDescription": "BAY123456 - 10mg 28 tablets",
"PickNrRangeBegin": 558,
"PickNrRangeEnd": 559,
"Quantity": null,
"TemporaryUnavailable": null,
"LotIds": [
"ed65aa20-e3b7-11eb-8b9b-00505699a442"
【问题讨论】: