在 Azure 数据工厂的 'WHERE field IN list' 条件中使用 Lookup activity 的结果列表
Use list of results of a Lookup activity in a 'WHERE field IN list' condition in Azure Data Factory
如标题所述,在 Azure 数据工厂管道中,我试图在针对 Salesforce 的查询的 WHERE 条件中使用查找 activity 的结果。
更详细地说,查找 activity 选项 'Select only first row' 未选中,如下所示:
SELECT id FROM staging_table
然后我尝试将输出传递给复制数据 activity,它在看起来像 WHERE Id IN @output
的条件下使用 Lookup 的输出运行针对 Salesforce 的查询,但是任何类型的语法我尝试 activity 输出导致一些错误,我只设法让它为数组的第一个结果工作。
感谢您提供的任何帮助!
这是因为当您不选中 Select only first row 选项时,您会得到这样的结果 [{"id":1},{"id":2}]
。但是,您需要在 SQL WHERE Id IN @output
中输出 (1,2)
。因此,您需要在第一个 SQL 中获取 Lookup activity (1,2)
的输出或从 [{"id":1},{"id":2}]
.
中提取
这里有一个类似的问题,你可以尝试解决。
如标题所述,在 Azure 数据工厂管道中,我试图在针对 Salesforce 的查询的 WHERE 条件中使用查找 activity 的结果。
更详细地说,查找 activity 选项 'Select only first row' 未选中,如下所示:
SELECT id FROM staging_table
然后我尝试将输出传递给复制数据 activity,它在看起来像 WHERE Id IN @output
的条件下使用 Lookup 的输出运行针对 Salesforce 的查询,但是任何类型的语法我尝试 activity 输出导致一些错误,我只设法让它为数组的第一个结果工作。
感谢您提供的任何帮助!
这是因为当您不选中 Select only first row 选项时,您会得到这样的结果 [{"id":1},{"id":2}]
。但是,您需要在 SQL WHERE Id IN @output
中输出 (1,2)
。因此,您需要在第一个 SQL 中获取 Lookup activity (1,2)
的输出或从 [{"id":1},{"id":2}]
.
这里有一个类似的问题,你可以尝试解决。