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

JOLT转换:将Timestamp值复制到数组所有键值对中

解决JOLT中复制Timestamp到每个键值对的问题

你已经搭建了基础的转换规则,只是之前的写法把Timestamp单独拆成了一个数组元素,没和其他键值对关联起来。只需要微调一下shift操作的规则,就能让每个键值对都带上这个时间戳啦。

正确的JOLT规则

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "$": "[].key",
        "@": "[].value",
        "@(2,Timestamp)": "[].Timestamp"
      }
    }
  }
]

规则细节解释

  • 核心是@(2,Timestamp):这里的2表示向上回溯两层路径(从当前处理的子键,回到根节点层级),拿到根节点的Timestamp值,再把它塞进当前正在生成的数组元素里。
  • 对于每个非Timestamp的键(比如first_key、another_key),我们会同时生成key(键名)、value(键值)和Timestamp三个字段,最终每个键值对都会变成数组里的一个完整对象。

转换效果验证

输入JSON:

{ "Timestamp": "2018-05-13T14:57:09", "first_key": "1023", "another_key": "1987", "yet_another_key": "677" }

经过上述规则转换后,输出完全匹配你的期望:

[ 
  { "Timestamp": "2018-05-13T14:57:09", "key": "first_key", "value": "1023" }, 
  { "Timestamp": "2018-05-13T14:57:09", "key": "another_key", "value": "1987" }, 
  { "Timestamp": "2018-05-13T14:57:09", "key": "yet_another_key", "value": "677" } 
]

如果需要保留时间戳的毫秒部分(比如你示例里的2018-05-13T14:57:09.087),只要确保输入的Timestamp字段包含该内容即可,JOLT规则不需要额外调整。

内容的提问来源于stack exchange,提问作者Klaus R.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 06:30:11