如何在蔚蓝数据工厂中使用jsonNodeReference展平多个子节点

问题描述 投票:0回答:1

我有以下格式的json文件。

{
  "results": [
    {
      "product": {
        "code": "104AB001",
        "names": [
          {
            "lang_code": "fr_CM",
            "name": "BANOLE"
          },
          {
            "lang_code": "f_CM",
            "name": "BANOLE"
          }
        ]
      }
    },
    {
      "product": {
        "code": "104AB002",
        "names": [
          {
            "lang_code": "fr_CM",
            "name": "BANOLE"
          },
          {
            "lang_code": "f_CM",
            "name": "BANOLE"
          }
        ]
      }
    }
  ]
}

我正在使用复制活动,并且>

"jsonNodeReference": "$.['results'][*].['product'].['names']",
                "jsonPathDefinition": {
                    "product__code": "$.['results'][*].['product'].['code']",
                    "product__names__lang_code": "['lang_code']",
                    "product__names__name": "['name']"
                }

预期输出是

product__code   product__names__lang_code   product__names__name
104AB001        fr_CM                       BANOLE
104AB001        f_CM                        BANOLE
104AB002        fr_CM                       BANOLE
104AB002        f_CM                        BANOLE

但是我越来越Azure data factory output as当我确实在堆栈溢出和Google中进行搜索时,我得到了一些信息,例如在Azure Data Factory中是不可能的。以下是链接

https://social.msdn.microsoft.com/Forums/en-US/5ebcef1f-5817-434c-9426-a83e9df35965/jsonnodereference-and-jsonpathdefinition-for-multiple-child-nodes?forum=AzureDataFactory

https://medium.com/@gary.strange/flattening-json-in-azure-data-factory-2f2130794258

我的问题在这里,如果在azure数据工厂中不可能,那么实现这一目标的另一种解决方案是什么。

我有一个具有以下格式的json文件。 {“结果”:[{“产品”:{“代码”:“ 104AB001”,“名称”:[{“语言代码”:“ fr_CM”,“名称”:“ ...

azure azure-sql-database azure-data-factory azure-data-factory-2 azure-databricks
1个回答
0
投票

在一个模式中只能将一个数组展平。可以引用多个数组-作为包含数组中所有元素的一行返回。但是,只有一个数组可以将其每个元素作为单独的行返回。这是jsonPath的当前限制。

© www.soinside.com 2019 - 2024. All rights reserved.