在 Azure 数据工厂管道中按日期查询
Query by date in Azure Data Factory Pipeline
我想在 复制作业 中为我在 Azure 数据工厂管道 中的源使用查询以及日期函数 -这是虚拟查询:
SELECT * 从 public.report_campaign_leaflet WHERE day="{今天 - 1d}"
我找到了一些关于动态内容和其他内容的文档,但没有关于如何在 sql 查询中直接使用日期函数的信息。
也许有人给我提示?
谢谢,最好的,
迈克尔
这是您的问题的可能解决方案。
在你的副本activity中,在源端,你在使用查询选项中选择查询,然后在查询框中你写一个表达式
这里是表达式@concat('SELECT * FROM public.report_campaign_leaflet WHERE day=','"',formatDateTime(adddays(utcnow(),-1), 'yyyy-MM-dd'),'"')
formatDateTime 函数会将 addDays(utcnow(),-1) 的输出格式化为 yyyy-MM-dd 格式
同样,例如,您可以在管道 processDate 中有一个参数,并根据触发器定义中的表达式设置该值,然后仅在查询中调用该参数。 (建议)
您需要用两个单引号 (''
) 替换双引号 ("
):
@concat('SELECT * FROM public.report_campaign_leaflet WHERE day=','''',formatDateTime(adddays(utcnow(),-1), 'yyyy-MM-dd'),'''')
我想在 复制作业 中为我在 Azure 数据工厂管道 中的源使用查询以及日期函数 -这是虚拟查询:
SELECT * 从 public.report_campaign_leaflet WHERE day="{今天 - 1d}"
我找到了一些关于动态内容和其他内容的文档,但没有关于如何在 sql 查询中直接使用日期函数的信息。
也许有人给我提示?
谢谢,最好的, 迈克尔
这是您的问题的可能解决方案。
这里是表达式@concat('SELECT * FROM public.report_campaign_leaflet WHERE day=','"',formatDateTime(adddays(utcnow(),-1), 'yyyy-MM-dd'),'"')
formatDateTime 函数会将 addDays(utcnow(),-1) 的输出格式化为 yyyy-MM-dd 格式
同样,例如,您可以在管道 processDate 中有一个参数,并根据触发器定义中的表达式设置该值,然后仅在查询中调用该参数。 (建议)
您需要用两个单引号 (''
) 替换双引号 ("
):
@concat('SELECT * FROM public.report_campaign_leaflet WHERE day=','''',formatDateTime(adddays(utcnow(),-1), 'yyyy-MM-dd'),'''')