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

如何使用Jolt对JSON对象内数值求和并添加‘total accounts’字段?

使用Jolt实现账户数值求和并添加total accounts字段

输入

{
  "accounts": {
    "canara": 1,
    "sbi": 0,
    "axis": 1,
    "hdfc": 0
  }
}

期望输出

{
  "canara": 1,
  "sbi": 0,
  "axis": 1,
  "hdfc": 0,
  "total accounts": 2
}

Jolt转换规则

推荐采用灵活适配的数组收集+求和方案,后续新增账户无需修改规则:

[
  {
    "operation": "shift",
    "spec": {
      "accounts": {
        "*": ["&", "account_values[]"]
      }
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "total accounts": "=sum(@(1,account_values))"
    }
  },
  {
    "operation": "remove",
    "spec": {
      "account_values": ""
    }
  }
]

规则解释

  1. shift操作:将accounts下的所有账户键值对直接映射到根节点,同时把每个账户的数值存入临时数组account_values,确保账户数量变动时求和逻辑仍有效。
  2. modify-overwrite-beta操作:调用Jolt内置的sum函数,对临时数组中的数值求和后赋值给total accounts字段。
  3. remove操作:清理临时生成的account_values数组,得到整洁的最终输出结构。

如果账户数量固定,也可以用直接指定字段的求和方式,无需临时节点,但账户变动时需要手动修改字段列表:

[
  {
    "operation": "shift",
    "spec": {
      "accounts": {
        "*": "&"
      }
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "total accounts": "=sum(@(1,canara),@(1,sbi),@(1,axis),@(1,hdfc))"
    }
  }
]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 01:10:30