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

如何在NiFi中使用JOLTTransforms实现指定JSON格式转换?

JOLT JSON转换实现方案

输入JSON

[
  {
    "ExchangeCurrency": "INR",
    "FExchangeCurrency": "AUD",
    "ExchangeRate": 123,
    "ExchangeDate2": "2023-05-01"
  },
  {
    "ExchangeCurrency": "INR",
    "FExchangeCurrency": "CHF",
    "ExchangeRate": 234,
    "ExchangeDate2": "2023-05-01"
  },
  {
    "ExchangeCurrency": "INR",
    "FExchangeCurrency": "EUR",
    "ExchangeRate": 456,
    "ExchangeDate2": "2023-05-01"
  }
]

预期输出JSON

{
  "ExchangeCurrency" : "INR",
  "ExchangeDate2" : "2023-05-01",
  "AUD_ExchangeRate" : 123,
  "CHF_ExchangeRate" : 234,
  "EUR_ExchangeRate" : 456
}

JOLT转换规则

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "ExchangeCurrency": "ExchangeCurrency",
        "ExchangeDate2": "ExchangeDate2",
        "ExchangeRate": "@(1,FExchangeCurrency)_ExchangeRate"
      }
    }
  },
  {
    "operation": "sort",
    "spec": {
      "ExchangeCurrency": 1,
      "ExchangeDate2": 2,
      "*_ExchangeRate": 3
    }
  }
]

规则说明

  • Shift操作:遍历输入数组的每个元素,提取统一的ExchangeCurrency和ExchangeDate2字段;将每个元素的ExchangeRate值映射到[FExchangeCurrency值]_ExchangeRate格式的键名下。
  • Sort操作:指定字段排序优先级,确保ExchangeCurrency、ExchangeDate2排在最前,所有汇率相关字段紧随其后,满足输出顺序要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 10:12:32