我目前正试图在Jolt中执行一项操作,我认为如果我可以先按值对数据进行分组,这将是最简单的操作.我正在try 按值columnIndex对此列表进行分组

输入:

{
  "temp_sfp": [
    {
      "value": 600,
      "valueOperator": "=",
      "uom": "mcg",
      "name": "Vitamin D (as D3 Cholecalciferol)",
      "percentDvOperator": "=",
      "percentDv": "75.0",
      "columnIndex": 1
    },
    {
      "value": 2,
      "valueOperator": "=",
      "uom": null,
      "name": "Bacillus Coagulans",
      "percentDvOperator": "=",
      "percentDv": null,
      "columnIndex": 1
    },
    {
      "value": 300,
      "valueOperator": "=",
      "uom": "mcg",
      "name": "Vitamin D (as D3 Cholecalciferol)",
      "percentDvOperator": "=",
      "percentDv": "50.0",
      "columnIndex": 0
    },
    {
      "value": 1,
      "valueOperator": "=",
      "uom": "mg",
      "name": "Bacillus Coagulans",
      "percentDvOperator": "=",
      "percentDv": null,
      "columnIndex": 0
    }
  ]
}

帖子主题:Re:Колибри

{
  "sfp_group": [
    {
      "1": [
        {
          "value": 600,
          "valueOperator": "=",
          "uom": "mcg",
          "name": "Vitamin D (as D3 Cholecalciferol)",
          "percentDvOperator": "=",
          "percentDv": "75.0",
          "columnIndex": 1
        },
        {
          "value": 2,
          "valueOperator": "=",
          "uom": null,
          "name": "Bacillus Coagulans",
          "percentDvOperator": "=",
          "percentDv": null,
          "columnIndex": 1
        }
      ]
    },
    {
      "2": [
        {
          "value": 300,
          "valueOperator": "=",
          "uom": "mcg",
          "name": "Vitamin D (as D3 Cholecalciferol)",
          "percentDvOperator": "=",
          "percentDv": "50.0",
          "columnIndex": 0
        },
        {
          "value": 1,
          "valueOperator": "=",
          "uom": "mg",
          "name": "Bacillus Coagulans",
          "percentDvOperator": "=",
          "percentDv": null,
          "columnIndex": 0
        }
      ]
    }
  ]
}

在以前的帖子中,我try 了类似的方法来try 对列索引进行分组

{
  "operation": "shift",
  "spec": {
    "@1": "",
    "temp_sfp": {
      "*": {
        "columnIndex": {
          "*": {
            "*": {
              "@4": "&2"
            }
          }
        }
      }
    }
  }
}

但我还是想不明白

推荐答案

诀窍是在右手边使用100,它适合于您的 case 复制它们.

因此,您可以使用以下shift个转换规范:

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": {
          "@": "sfp_group[@(1,columnIndex)].@1,columnIndex"
        }
      }
    }
  }
]

如果columnIndex值为0,1(如当前输入中),则将给出所需的结果,但如果它们不同(如所需输出中所述的1,2),则最好使用以下规范(通用)

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": {
          "@": "@1,columnIndex.@1,columnIndex"
        }
      }
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": "sfp_group[]"
    }
  }
]

Json相关问答推荐

Vega-Lite:文本笔画在外部

当有2个嵌套数组时展平复杂的JSON

如何在Vega中使标记的符号在鼠标指针悬停时可点击

Oracle plsql:如何将json文件加载到嵌套表中

Pandas 对REST API的自定义响应

使用Powershell将JSON文件加载到SQL Server表格

JSONPath:查找子项目条件在字符串列表中的项目

Scala - 在构建 Json 时无法删除 Key -> value "{}" 大括号的双引号

Powershell中等效的JSONPath通配符以 Select 对象中的所有数组

将文本转换为 python 列表

在循环中将变量添加到 bash 数组

如何用 Xidel 正确读取这个 JSON 文件?

解析 JSON API 响应

如何在 Go 中生成带有排序键的 JSON?

如何比较 JSON 文档并返回与 Jackson 或 Gson 的差异?

ASP.NET MVC - 将 Json 结果与 ViewResult 结合起来

将json字符反序列化为枚举

如何使用 Jackson 重命名 JSON 序列化中的根键

如何在不消除对象歧义的情况下使用 circe 解码 ADT

JSON Schema:验证数字或空值