在Azure数据工厂管道中按日期查询

时间:2019-03-09 21:26:43

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

我想在复制作业中使用查询来查询Azure Data Factory管道中的源以及日期函数-这是虚拟查询:

SELECT * FROM public.report_campaign_leaflet WHERE day =“ {today-1d}

我找到了一些有关动态内容的文档和其他内容,但是没有有关如何在sql查询中直接使用日期函数的信息。

也许有人对我有暗示?

谢谢! 迈克尔

2 个答案:

答案 0 :(得分:1)

这是您问题的可能解决方案。

enter image description here在复制活动中,在源端,您可以在“使用查询”选项中选择“查询”,然后在查询框中编写一个表达式

这是表达式@concat('SELECT * FROM public.report_campaign_leaflet WHERE day=','"',formatDateTime(adddays(utcnow(),-1), 'yyyy-MM-dd'),'"')

formatDateTime 函数只会将addDays(utcnow(),-1)的输出格式化为yyyy-MM-dd格式

同样,例如,您可以在管道processDate中有一个参数,并在触发器定义中的表达式中设置此值,然后仅在查询中调用该参数。 (建议)

答案 1 :(得分:0)

您需要用两个单引号(")替换双引号(''):

@concat('SELECT * FROM public.report_campaign_leaflet WHERE day=','''',formatDateTime(adddays(utcnow(),-1), 'yyyy-MM-dd'),'''')