[使用dataweave合并数组中的元素

问题描述 投票:0回答:1

输入:

{
  "letterCountArray": [
    {
      "letter": "A",
      "count": 5
    },
    {
      "letter": "B",
      "count": 3
    },
    {
      "letter": "C",
      "count": 6
    },
    {
      "letter": "D",
      "count": 5
    },
    {
      "letter": "E",
      "count": 6
    }
  ]
}

预期输出:

  {
    "count D+E": 11
  }

我尝试了以下数据编织,但未成功:

%dw 1.0 
%input payload application/json
%output application/json
---
payload.letterCountArray filter ($.letter == "D" or $.letter == "E") map { "countD+E": $ reduce ($ + $) } 
dataweave
1个回答
0
投票

这将汇总元素:

%dw 1.0
%input payload application/json
%output application/json
---
"count D+E": sum (payload.letterCountArray filter ($.letter == "D" or $.letter == "E") map (
    $.count
))
© www.soinside.com 2019 - 2024. All rights reserved.