You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用JMESPath基于externalId提取JSON中的name字段

正确JMESPath表达式提取指定externalId对应的name字段

需求场景

根据JSON数据中fields数组里externalId值为2720135的条目,提取对应父级的name字段(目标结果为"360 Index")。

正确JMESPath表达式

data[?fields[?name=='externalId' && data.externalId=='2720135']].name | [0]

表达式说明

  • data[]:遍历顶层data数组中的每个元素
  • ?fields[?name=='externalId' && data.externalId=='2720135']:过滤出满足以下条件的data元素:
    • 自身fields数组中存在一个条目,其name等于'externalId'
    • 该条目的data.externalId值恰好为'2720135'
  • .name:提取符合条件的data元素的name字段
  • | [0]:将结果数组转为单个字符串(若需要保留数组形式可去掉此部分)

测试用JSON数据

{  
  "data": [
    {
      "id": "f15073f7-c934-479f-bed9-07b6c3402b60",
      "name": "360 Index",
      "description": "360 Index",
      "displayName": "360 Index",
      "fullName": "360 Index",
      "type": "Application",
      "tags": [],
      "fields": [
        {
          "name": "externalId",
          "data": {
            "type": "ExternalId",
            "externalId": "2720135",
            "comment": null,
            "status": "ACTIVE",
            "externalUrl": null
          },
          "dataType": null
        }
      ],
      "relations": [],
      "milestones": [],
      "createdAt": "2022-07-06T19:00:20.202009Z",
      "updatedAt": "2022-09-21T11:51:45.887413Z",
      "documents": [],
      "status": "ACTIVE",
      "lxState": "BROKEN_QUALITY_SEAL",
      "level": 1,
      "qualitySealStatus": "BROKEN",
      "score": "NaN",
      "rev": 51,
      "lxExcludeFromQuota": false,
      "naFields": [],
      "subscriptions": [],
      "permittedReadACL": [],
      "permittedWriteACL": []
    }
  ],
  "cursor": "bWl4OjAjRFhGMVpYSjVRVzVrUm1WMFkyZ0JBQUFBQUFCWkN6b1dlamhIYzBSd1pVeFVSUzFCTVdwT2NFZHpTMW95UVE9PSUxNjY0MzYzMTQ5NDM1"
}

内容的提问来源于stack exchange,提问作者Kevin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 07:26:08