Azure Data Factory:在CosmosDB源中查询_ts(epoch)字段

时间:2018-03-08 03:10:48

标签: azure azure-cosmosdb datetime-format epoch azure-data-factory

我正在尝试将Azure CosmosDB中的数据复制到Azure SQL数据库中。

在Azure CosmosDB源中,查询如下:

select * from c where c.DefinitionTime >= '@{formatDateTime(pipeline().parameters.windowStart, 'yyyy-MM-ddTHH:mm:ssZ' )}' AND c.DefinitionTime < '@{formatDateTime(pipeline().parameters.windowEnd, 'yyyy-MM-ddTHH:mm:ssZ' )}'

在CosmosDB中,&#34; DefinitionTime&#34;存储为字符串。要运行上面的查询,我必须更新&#34; DefinitionTime&#34;使用范围索引,这是一种可能的解决方案。

另一种可能的解决方案是使用所有CosmosDB文档中都可用的_ts字段。 _ts表示在纪元时间中创建或上次更新文档的时间。

所以基本上问题是如何将pipeline().parameters.windowStart转换为纪元时间。 &#34; formatDateTime&#34;函数的第二个参数采用格式似乎没有办法要求纪元格式。此外,没有办法使用日期时间算法手动转换为纪元。

enter image description here

0 个答案:

没有答案