[英]Azure Data Factory: trivial SQL query in Data Flow returns nothing
[英]Concat Azure Data Factory Pipeline parameters in SQL Query
Azure 数据工厂管道正在获取存储在数据库表中的 SQL 查询。 例如。 询问:
Select * from employees where first_name = 'Sam' and last_name = 'mathew'
我需要以这样的方式更新查询,即fname
和lname
将成为 azure 数据工厂管道中的参数,例如pipeline().parameters.fname
和pipeline().parameters.lname
如何修改查询以在 SQL 查询中使用这些管道参数?
注意:SQL 查询存储在数据库表中。 管道将在复制数据管道步骤中获取 SQL 查询
正如@Nandan所建议的,您必须通过在数据库中创建一个存储过程并在复制活动中传递管道参数来做到这一点。
请按照以下演示进行操作:
在这里,我将查询中的选定数据复制到 blob 中的 csv 文件。 你可以复制到任何你想要的地方。
我正在使用fname
和lname
作为参数在数据库中创建存储过程,并在 sql 中使用concat()
。
create or alter procedure dbo.proc1 @fname nvarchar(32),@lname nvarchar(32)
as
begin
select concat(firstname,' ',lastname) as employee_name from [dbo].[employees] where employees.firstname=@fname and
employees.lastname=@lname;
end
fname
和lname
创建管道和参数,如下所示。fname
和lname
参数值。我的输出:
您可以像这样使用concat函数:
在复制活动中的源查询中:
@concat('select * from employees where first_name= ''', pipeline().parameters.fname,''' and last_name =''',pipeline().parameters.lname,''' ')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.