在 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'),'''')