azure 如何仅获取Json键作为ADF查找活动的输出

dz6r00yl  于 2023-02-13  发布在  其他
关注(0)|答案(1)|浏览(148)

这是我的json,通过查找活动读取

{
 "key1" : { "id" = "100" },
 "key2" : "XYZ",
 "key3" : [1,2,3]
}

我需要一个能单独从json上面提供所有键的活动

Lookup.output.firstrow.key2 gives me the string XYZ

我可以使用什么表达式来单独获取所有密钥
我真的在寻找一些表达式,比如Lookup.output.firstrow.getKeys(),它返回键的数组,比如[“key1”,“key2”,“key3”]

nxowjjhe

nxowjjhe1#

如何仅获取Json键作为ADF查找活动的输出
没有这样直接的方法来实现这一点,您必须通过设置变量和字符串操作来实现。
遵循以下程序:
1.我把json文件放在lookup中,它的输出如下:

1.为了从上面的Json中获取所有键,我首先进行了set variable活动,并创建了一个demostring变量。

@substring(string(activity('Lookup1').output.value),2,sub(length(string(activity('Lookup1').output.value)),4))

在这里,我们将查找输出转换为字符串,并删除开始和结束处的大括号。

1.然后,我进行了另一个设置变量的活动,创建了一个demo2array变量。

@split(substring(string(split(variables('demo'),':')),2,sub(length(string(split(variables('demo'),':'))),4)),',')

这里我们将字符串拆分为:,

1.然后我创建了一个数组,默认范围为偶数值0,2,4,6等

1.然后将其传递给ForEach活动

1.然后在For Each活动中,我使用了append变量活动,并将值指定为

@variables('demo2')[item()]

    • 输出:**
    • 注意:**如果您的值包含:,,上述表达式也将拆分这些值。如果我们使用:拆分值,则我将仅使用:拆分字符串,其余内容将被视为单个值。在下图中,突出显示的值将被视为单个值。

相关问题