jolt - 复杂 JSON 转换的 Jolt
问题描述
从第一个数组元素和第二个元素中提取值并连接两者。输入字符串:
[
{
"creationDate": "2020-04-01T14:14:32.685+0000",
"factValues": [
{
"Factname": "Medicine",
"factvalue": "1234556",
"sourcePguid": "1"
},
{
"Factname": "Journal",
"factvalue": "123455",
"sourcePguid": "1"
}
]
},
{
"creationDate": "2020-04-01T14:14:32.685+0000",
"factValues": [
{
"Factname": "chemical",
"factvalue": "123455567",
"sourcePguid": "2"
},
{
"Factname": "Rubber",
"factvalue": "123455435",
"sourcePguid": "3"
}
]
}
]
输出除外:
{
{
"sourcePguid" : "1",
"Medicine":"1234556",
"Journal":"123455"
}, {
"sourcePguid" : "2",
"chemical":"123455567",
"Rubber":"123455435"
}
}
请帮助我在 spec.json 中实现预期的 output.json。规范未按预期输出进行转换。我想学习如何在字符串解析器中使用属性。它会很棒。
解决方案
希望这可能会有所帮助,
[
{
"operation": "shift",
"spec": {
"*": {
"factValues": {
"*": {
"sourcePguid": "&3.sourcePguid",
"@(0,factvalue)": "&3.@Factname"
}
}
}
}
}, {
"operation": "modify-overwrite-beta",
"spec": {
"*": {
"sourcePguid": "=firstElement(@(1,sourcePguid))"
}
}
}
]
推荐阅读
- java - 在 Android 中保存签名的 X509Certificate 和 PrivateKey
- windows - 如何计算具有特定名称的文件夹数量并删除最旧的文件夹
- python - 如何在 TensorFlow 中无周期性边界滚动?
- c# - 如何在两个值之间随机化?
- php - 仅当单元格不为空时,SQL 查询才包含在 CONCAT 中
- azure - 微软翻译 API 3.0 到 HTML
- android - Android-support-v4 library doesn't have JobIntentService in B4A
- shiny - SelectInput and Leaflet not connecting
- docker - eth0 IP in the docker IPs range
- amazon-web-services - AWS Cognito - 在迁移 lambda 运行后运行另一个 lambda