如何使用 JSONata 按键对 JSON 对象进行分组
How to group the JSON object by a key using JSONata
我想使用 JSONata 根据 JSON 中的键对数组中的 json 对象进行分组对象。
例如,我想根据下面给出的 JSON 示例的名称对汽车进行分组。
[
{
"car" : "audi",
"color" : "blue",
"reg" : 133434
},
{
"car" : "benz",
"color" : "red",
"reg" : 134444
},
{
"car" : "audi",
"color" : "red",
"reg" : 134884
}
]
预期输出
{
"audi" : [
{
"car" : "audi",
"color" : "blue",
"reg" : 133434
},
{
"car" : "audi",
"color" : "red",
"reg" : 134884
}
],
"benz" : [
{
"car" : "benz",
"color" : "red",
"reg" : 134444
}
]
}
$${car: [$.{"car": car, "color": color, "reg": reg}]}
文档几乎给出了解决方案:
https://docs.jsonata.org/sorting-grouping
为了确保每个组的值(即使只有一个)存储在数组中,需要使用 [...]
的显式列表构造。
我想使用 JSONata 根据 JSON 中的键对数组中的 json 对象进行分组对象。
例如,我想根据下面给出的 JSON 示例的名称对汽车进行分组。
[
{
"car" : "audi",
"color" : "blue",
"reg" : 133434
},
{
"car" : "benz",
"color" : "red",
"reg" : 134444
},
{
"car" : "audi",
"color" : "red",
"reg" : 134884
}
]
预期输出
{
"audi" : [
{
"car" : "audi",
"color" : "blue",
"reg" : 133434
},
{
"car" : "audi",
"color" : "red",
"reg" : 134884
}
],
"benz" : [
{
"car" : "benz",
"color" : "red",
"reg" : 134444
}
]
}
$${car: [$.{"car": car, "color": color, "reg": reg}]}
文档几乎给出了解决方案:
https://docs.jsonata.org/sorting-grouping
为了确保每个组的值(即使只有一个)存储在数组中,需要使用 [...]
的显式列表构造。