如何从 Azure 数据工厂中的 json 对象中提取值

How to extract the value from a json object in Azure Data Factory

我有我的 ADF 管道,设置变量 activity 的最终输出是这样的 {name:test, value:1234}

这个变量的输入是

{
    "variableName": "test",
    "value": "test:1234"
}

设置变量项栏中提供的表达式为@item().ColumnName。我的 JSon 文件中的 ColumnName 是这样的 "ColumnName":"test:1234"

我如何更改它以便我只得到 1234。我只对这里的价值感兴趣。

看起来您需要用冒号拆分值,您可以使用 Azure 数据工厂 (ADF) expressions and functionssplit 函数,它将一个字符串拆分为一个数组,然后last 函数从数组中获取最后一项。这在这种情况下非常有效:

@last(split(variables('varWorking'), ':'))

示例结果:

根据您的情况更改变量名称。您还可以使用 lastIndexOf 之类的字符串方法来定位冒号,并从那里获取字符串的其余部分。示例表达式如下所示:

@substring(variables('varWorking'),add(indexof(variables('varWorking'), ':'),1),4)

它有点复杂,但可能适合您,具体取决于要求。

自从获得 item 以来,您似乎是在迭代器内部使用它,但是,我尝试使用简单的 json 查找值

@last(split(activity('Lookup').output.value[0].ColumnName,':'))