dataweave - 如何在 Mulesoft 中使用 Dataweve 使用 groupBy 函数
问题描述
我在 Dataweave 中有以下 JSON 数据。我想 groupBy products.plu 然后总结数量。
请参阅下面的输入和所需的输出。谢谢
{
"brandCode": "XXX",
"storeCode": "XX100",
"products": [
{
"plu": "NF0A529SWE7100L",
"qty": 2.000
},
{
"plu": "NF0A529SWE7100L",
"qty": -1.000
},
{
"plu": "NF0A529SWE7100M",
"qty": 2.000
}
]
}
期望的输出:
{
"brandCode": "XXX",
"storeCode": "XX100",
"products": [
{
"plu": "NF0A529SWE7100L",
"qty": 1.000
},
{
"plu": "NF0A529SWE7100M",
"qty": 2.000
}]
}
解决方案
我的代码在下面
{
"brandCode": payload.brandCode,
"storeCode": payload.storeCode,
"products":
payload.products groupBy $.plu distinctBy $ pluck $ map{
"plu": $.storeCode,
"qty": (sum($.qty)),
但是输出:plu 是数组(例如:“plu”:[“NF0A529SWE7100L”])我必须使用 min($.plu),我可以知道我们有最好的方法吗?
推荐阅读
- c# - WPF Datagrid:根据单元格值为整行或行中的第一个单元格着色
- android - 自定义可绘制状态
- php - PHP 中 Iconomi API 中的身份验证
- microcontroller - int32_t 用于 32 微控制器中的堆栈
- linux - 大对齐的 mmap
- javascript - 如何将我的字符串输出转换为对象,以便使用 javascript 将 json 作为输出?
- docker - .Net Core Kafka 消费者总是返回 null
- node.js - NodeJS:一旦执行多个请求,如何使用 Promise.all 来执行一个方法?
- python - 正则表达式 - 提取列表中以大写字母开头的子字符串,带有法语特殊符号
- asp.net-mvc - POST 请求的 Asp.Net MVC 无 Cookie 重定向