需要帮助来弄清楚如何修复颠簸规格
Need help to figure out how to fix a jolt spec
我正在尝试使用 Jolt 编写规范,我一直在努力解决它,我想要的输出是:
{
"Team": [
{
"ID": "1",
"Source": {
"HV": 1,
"ID": 1
}
},
{
"ID": "3",
"Source": {
"HV": 2,
"ID": 3
}
}
]
}
我有以下输入:
[
{
"Page": 910407,
"TimingID": 10014,
"ScoreInfo": {
"Inn": 9,
"TB": 1,
"Team": [
{
"HV": 1,
"ID": 1,
"Score": 4
},
{
"HV": 2,
"ID": 3,
"Score": 2
}
],
"HV": null
}
}
]
但执行此规范后:
[
{
"operation": "shift",
"spec": {
"0": {
"ScoreInfo": {
"Team": {
"*": "&"
}
}
}
}
},
{
"operation": "shift",
"spec": {
"*": "Team.@ID.Source"
}
}
]
我得到了这个结果:
{
"Team" : {
"1" : {
"Source" : {
"HV" : 1,
"ID" : 1,
"Score" : 4
}
},
"3" : {
"Source" : {
"HV" : 2,
"ID" : 3,
"Score" : 2
}
}
}
}
我会帮忙弄清楚如何解决,我一直在阅读和练习,但在某些情况下仍然有一些疑问,当输出开始变得更高级时,使用 Jolt 需要多跑几英里.
谢谢,
应用一级 shift 转换就足够了,例如
[
{
"operation": "shift",
"spec": {
"*": {
"ScoreInfo": {
"Team": {
"*": {
"HV": "&2.[&1].Source.&",
"ID": "&2.[&1].Source.&",
"@(0,ID)": "&2.[&1].ID"
}
}
}
}
}
}
]
其中&2代表最外层的键名(Team
),[&1]用来去掉内部数组而不是获取对象, & 叶子(最里面的&符号)代表获取当前级别的键的值,例如 HV
&ID
我正在尝试使用 Jolt 编写规范,我一直在努力解决它,我想要的输出是:
{
"Team": [
{
"ID": "1",
"Source": {
"HV": 1,
"ID": 1
}
},
{
"ID": "3",
"Source": {
"HV": 2,
"ID": 3
}
}
]
}
我有以下输入:
[
{
"Page": 910407,
"TimingID": 10014,
"ScoreInfo": {
"Inn": 9,
"TB": 1,
"Team": [
{
"HV": 1,
"ID": 1,
"Score": 4
},
{
"HV": 2,
"ID": 3,
"Score": 2
}
],
"HV": null
}
}
]
但执行此规范后:
[
{
"operation": "shift",
"spec": {
"0": {
"ScoreInfo": {
"Team": {
"*": "&"
}
}
}
}
},
{
"operation": "shift",
"spec": {
"*": "Team.@ID.Source"
}
}
]
我得到了这个结果:
{
"Team" : {
"1" : {
"Source" : {
"HV" : 1,
"ID" : 1,
"Score" : 4
}
},
"3" : {
"Source" : {
"HV" : 2,
"ID" : 3,
"Score" : 2
}
}
}
}
我会帮忙弄清楚如何解决,我一直在阅读和练习,但在某些情况下仍然有一些疑问,当输出开始变得更高级时,使用 Jolt 需要多跑几英里.
谢谢,
应用一级 shift 转换就足够了,例如
[
{
"operation": "shift",
"spec": {
"*": {
"ScoreInfo": {
"Team": {
"*": {
"HV": "&2.[&1].Source.&",
"ID": "&2.[&1].Source.&",
"@(0,ID)": "&2.[&1].ID"
}
}
}
}
}
}
]
其中&2代表最外层的键名(Team
),[&1]用来去掉内部数组而不是获取对象, & 叶子(最里面的&符号)代表获取当前级别的键的值,例如 HV
&ID