如何对dataweave中的多列进行分组
how to groupBy muitiple columns in dataweave
我有下面的数组输入,需要按多个键进行分组。
[
{
"storeCode": 1201,
"soNo": "S001",
"item": "A001"
},
{
"storeCode": 1201,
"soNo": "S001",
"item": "A001"
},
{
"storeCode": 1201,
"soNo": "S001",
"item": "A002"
},
{
"storeCode": 1201,
"soNo": "S002",
"item": "A001"
},
{
"storeCode": 1202,
"soNo": "S001",
"item": "A002"
}
]
如何将其按 storeCode
和 soNo
分组。
[
{
"storeCode": 1201,
"soNo": "S001",
"item": "A001"
},
{
"storeCode": 1201,
"soNo": "S001",
"item": "A002"
},
{
"storeCode": 1201,
"soNo": "S002",
"item": "A001"
},
{
"storeCode": 1202,
"soNo": "S001",
"item": "A002"
}
]
您似乎想要对数据进行排序,而不是分组。您可以像这样快速完成:
%dw 2.0
output application/json
---
(payload orderBy $.soNo) orderBy $.storeCode
如果您只想获得不同的对象,请勿使用串联 - 这在技术上是不正确的,因为会发生重叠。这样做:
%dw 2.0
output application/json
---
payload distinctBy $
我有下面的数组输入,需要按多个键进行分组。
[
{
"storeCode": 1201,
"soNo": "S001",
"item": "A001"
},
{
"storeCode": 1201,
"soNo": "S001",
"item": "A001"
},
{
"storeCode": 1201,
"soNo": "S001",
"item": "A002"
},
{
"storeCode": 1201,
"soNo": "S002",
"item": "A001"
},
{
"storeCode": 1202,
"soNo": "S001",
"item": "A002"
}
]
如何将其按 storeCode
和 soNo
分组。
[
{
"storeCode": 1201,
"soNo": "S001",
"item": "A001"
},
{
"storeCode": 1201,
"soNo": "S001",
"item": "A002"
},
{
"storeCode": 1201,
"soNo": "S002",
"item": "A001"
},
{
"storeCode": 1202,
"soNo": "S001",
"item": "A002"
}
]
您似乎想要对数据进行排序,而不是分组。您可以像这样快速完成:
%dw 2.0
output application/json
---
(payload orderBy $.soNo) orderBy $.storeCode
如果您只想获得不同的对象,请勿使用串联 - 这在技术上是不正确的,因为会发生重叠。这样做:
%dw 2.0
output application/json
---
payload distinctBy $