【问题标题】:Azure Data Factory - if with multiple conditionsAzure 数据工厂 - 如果有多个条件
【发布时间】:2021-03-14 13:21:00
【问题描述】:

我想在 ADF 中创建一个管道,检查数据是否具有正确的格式。我想检查列数、文件大小等。如果不满足这些条件中的任何一个,我想发送电子邮件。这是我的管道

我在管道中编写了第一个条件,一切正常。

@not(equals(activity('Get Metadata1').output.size,0)) 

但是,当我想添加下一个条件时。所以我的整个情况是这样的。

@not(equals(activity('Get Metadata1').output.size,0)) and equals(activity('Get Metadata1').output.columnCount,5)

我开始收到此错误消息。

'not' 是原语,不支持嵌套属性

您能告诉我如何解决这个问题吗?

【问题讨论】:

    标签: azure azure-data-factory azure-data-factory-2


    【解决方案1】:

    [and] 操作符应该是如下的函数调用...

    @and(not(equals(activity('Get Metadata1').output.size,0)),equals(activity('Get Metadata1').output.columnCount,5))
    

    有 3 个条件...

    @and(and(not(equals(activity('Get Metadata1').output.size,0)),equals(activity('Get Metadata1').output.columnCount,5)),equals(activity('Get Metadata1').output.exists,true))
    

    有4个条件...

    @and(and(and(not(equals(activity('Get Metadata1').output.size,0)),equals(activity('Get Metadata1').output.columnCount,5)),equals(activity('Get Metadata1').output.exists,true)),equals(1,1))
    

    有关表达式函数here 的语法,请参阅文档。

    【讨论】:

    • 谢谢,你能给我一个例子,你将如何写这个?如果我的情况可以,那就太好了。
    • 替换了整个答案。先前的信息基于一组不同的表达式函数。很抱歉有任何混淆。上面的明确答案提供了您所需要的。
    • 谢谢你已经成功了。当我想添加两个以上的条件时,你知道我应该怎么做吗?我可以添加多个,但如果有更好的解决方案,我会徘徊
    • 请参阅上面的编辑以显示使用更多条件的示例。我也添加了一个文档链接,这应该有助于满足未来的任何需求。由于此信息已经回答了您的问题和详细说明请求,请将此回复标记为答案,以便其他人可以看到您的问题有一个可能对他们也有帮助的解决方案。
    猜你喜欢
    • 2020-03-11
    • 2020-03-09
    • 2021-04-24
    • 1970-01-01
    • 2017-08-21
    • 2015-02-21
    • 2021-01-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多