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

基于ProductId在Jolt中新增自增序号列SubProductIDSEQ

Jolt转换规则:按ProductId生成自增SubProductIDSEQ

以下是满足需求的Jolt转换规则,核心逻辑是先按ProductId聚合同组子产品,为每组内元素生成从1开始的递增序号,再还原为原始数组结构:

[
  // 1. 按ProductId分组,将同ID的子产品聚合到对应键的数组中
  {
    "operation": "shift",
    "spec": {
      "*": {
        "@": "@(1,ProductId).[]"
      }
    }
  },
  // 2. 为每组内的子产品添加自增序号(索引从0开始,+1得到1起始的序列)
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": {
          "@": "[#2].&",
          "#=toString(&1 + 1)": "[#2].&.SubProductIDSEQ"
        }
      }
    }
  },
  // 3. 展开分组结构,恢复为一维数组格式
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": "[]"
      }
    }
  }
]

规则细节:

  • 分组:第一个shift操作将每个元素存入以自身ProductId为键的数组,形成{ProductId: [子产品1, 子产品2...]}的临时结构。
  • 序号生成:第二个shift中,&1代表当前元素在组内的索引(从0开始),通过#=toString(&1 + 1)生成从1起始的字符串类型序号。
  • 展开还原:第三个shift将所有分组内的元素提取出来,重新组合为一维数组,与原始输入的数组结构一致。

将上述规则应用到你提供的输入JSON,即可得到符合要求的输出结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 20:15:30