Azure 逻辑应用程序:当 SQL 查询 returns 没有数据行时将条件设置为 False

Azure Logic Apps: Set condition to False when SQL query returns no rows of data

我如何有条件地测试执行 SQL 查询的输出以确保它 returns 一些数据行。

在我下面的示例中,如果查询 returns 没有行,我不希望它发送电子邮件,我想做其他事情。什么是测试?

感谢您的宝贵时间

我测试了一下,如果查询结果是没有行,查询体是这样的:

{
  "OutputParameters": {},
  "ResultSets": {}
}

因此您可以添加一个 @{body('Execute_a_SQL_query')['OutputParameters']} 等于 {} 的条件。如果是真的,做你想做的事。你可以在 Code view 模式下设置它。

下面是测试结果,希望这是你想要的。

我在直到长度为零的 until 条件中使用类似的方法。我想你也可以这样做?

@equals(length(body('Execute_a_SQL_query')?['value']), 0)

这将适用于查询 SQL V2。 所做的是获取 ResultSet 并转换为字符串。这可以防止长度函数出现空错误。由于空结果集为{},长度为2。因此如果长度为2,则结果为空。

 "expression": {
                    "and": [
                        {
                            "equals": [
                                "@length(string(body('Execute_a_SQL_query_(V2)')?['ResultSets']))",
                                2
                            ]
                        }
                    ]
                }