USQL提取文件的子集

时间:2018-03-03 18:48:34

标签: azure-data-lake u-sql

我有一个USQL问题。我有一个日常工作,即以下列格式将文件输出到目录

/ MyOutput中/ {YYYY} / {MM} / {DD} /file.csv

我现在有第二份工作要运行,它将使用第一份工作生成的最新30个文件。我不知道如何最好地做到这一点。

我知道我可以在提取器中使用通配符,但我不想提取所有文件,然后使用select / where去除我不想要的文件,因为如果我保持年限,提取所有文件会变得非常昂贵值得这些文件。

那么在usql中有一种很好的方式可以说只提取最新的x文件吗?或者我有什么选择?

谢谢, 约翰

1 个答案:

答案 0 :(得分:1)

如果您使用日期模式,它将执行您想要的操作。

int largest = Math.max(num1, Math.max(num2, num3));

只读取与日期范围匹配的文件 - 它首先不会读取所有这些文件。