使用 JOLT 获取子值并设置为父值
Get a child value and set as the parent value using JOLT
我有这个输入 JSON:
{
"stores": {
"1100": {
"metric1": "27",
"metric2": "3013775",
"indicator": 8.96
},
"1200": {
"metric1": "2",
"metric2": "354418",
"indicator": 5.64
}
}
}
并且需要将子指标的值中每个store的值进行转换,像这样:
{
"stores": {
"1100": 8.96,
"1200": 5.64
}
}
我该怎么做?
您可以像这样使用 shift 转换
[
{
"operation": "shift",
"spec": {
"stores": {
"*": {
"indicator": "&2.&1"
}
}
}
}
]
其中 "*" 表示 stores 对象的索引。例如,我们遍历 stores 对象的元素,将结果限制为 "indicator" 键的值,其中 &2 表示向上两层并获取键名("stores") 并且 &1 表示向上一层并获取键名指数值("1100","1200")
我有这个输入 JSON:
{
"stores": {
"1100": {
"metric1": "27",
"metric2": "3013775",
"indicator": 8.96
},
"1200": {
"metric1": "2",
"metric2": "354418",
"indicator": 5.64
}
}
}
并且需要将子指标的值中每个store的值进行转换,像这样:
{
"stores": {
"1100": 8.96,
"1200": 5.64
}
}
我该怎么做?
您可以像这样使用 shift 转换
[
{
"operation": "shift",
"spec": {
"stores": {
"*": {
"indicator": "&2.&1"
}
}
}
}
]
其中 "*" 表示 stores 对象的索引。例如,我们遍历 stores 对象的元素,将结果限制为 "indicator" 键的值,其中 &2 表示向上两层并获取键名("stores") 并且 &1 表示向上一层并获取键名指数值("1100","1200")