首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure数据湖环

Azure数据湖环
EN

Stack Overflow用户
提问于 2018-03-13 17:06:06
回答 3查看 597关注 0票数 3

Azure和use支持使用While或For循环并创建多个输出吗?我希望输出到多个文件使用一个USQL执行。

这就是我想要的:

代码语言:javascript
复制
Foreach @day in @days
    @dataToSave = 
        SELECT    day AS day,
                  company AS Company,      
        FROM @data
        WHERE @day = @day

    @out = @day + ".txt"

    OUTPUT @dataToSave
    TO @out
    USING Outputters.Text();
Next

我知道我可以使用powershell,但我认为这将花费性能准备执行。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2018-03-13 21:17:56

U不支持循环时或循环。您可以使用WHERE语句过滤提取的数据,使用虚拟列根据文件路径/名称(example)进行筛选。

要输出到多个文件,可以为每个输出编写一个唯一的行集和WHERE子句,如果它是一个合理的文件数。

正如您所说的,您还可以使用Powershell或U (example)编写脚本。

多个文件的动态输出目前处于有限的私有预览中。如果您对此特性感兴趣,请发送电子邮件到microsoft do.com上的usql,因为它可以根据您的描述为您的场景工作。

希望这会有所帮助,如果您对实现这些解决方案有更多的疑问,请告诉我。

票数 5
EN

Stack Overflow用户

发布于 2018-03-14 14:43:19

您可以尝试创建一个自定义输出程序,忽略输出文件并在自己的文件上写入!公共覆盖空输出(IRow行,IUnstructuredWriter输出)

票数 0
EN

Stack Overflow用户

发布于 2018-03-15 09:59:59

试试这个,也可以使用输出器:

代码语言:javascript
复制
public override void Output(IRow input, IUnstructuredWriter output)
    {
       using (System.IO.StreamWriter streamWriter = new StreamWriter(address + _file, true))
    //Save on file!
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49261914

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档