我想通过具有相同row_id的投资者在row_id键内移动推荐数组
原始杰森
{
"investors": [
{
"row_id": 1,
"name": "AAAA"
},
{
"row_id": 2,
"name": "BBBB"
}
],
"recommendations": [
{
"row_id": "1",
"title": "ABC"
},
{
"row_id": "2",
"title": "CDE"
}
]
}
我在https://jolt-demo.appspot.com尝试了很多规格,但没有成功
规格已尝试...
[{
"operation": "shift",
"spec": {
"investors": {
"*": "investors[]"
},
"recommendations": {
"@": "recommendations[]"
}
}
}]
所需的杰森
{
"investors": [
{
"row_id": 1,
"name": "AAAA",
"recommendations":[{
"row_id": "1",
"title": "ABC"
}]
},
{
"row_id": 2,
"name": "BBBB",
"recommendations":[{
"row_id": "2",
"title": "CDE"
}]
}
]
}
答案 0 :(得分:1)
这可以分两个阶段完成
第一班会根据row_id对所有内容进行分组。
(我建议运行自己的第一个班次以查看输出是什么)
第二次移位使用该分组的输出并格式化结果。
[
{
"operation": "shift",
"spec": {
"*": {
"*": {
"row_id": {
"*": {
"@2": "&.&4"
}
}
}
}
}
},
{
"operation": "shift",
"spec": {
"*": {
"investors": "investors.[#2]",
"recommendations": "investors.[#2].recommendations[]"
}
}
}
]