【问题标题】:How to Avoid adding duplicates to U-SQL Tables如何避免向 U-SQL 表添加重复项
【发布时间】:2016-06-10 04:25:35
【问题描述】:

除了添加/截断分区之外,有没有办法避免在 U-SQL 表中添加重复记录。让我们假设两个记录只有唯一标识符不同。

【问题讨论】:

    标签: azure-data-lake u-sql


    【解决方案1】:

    您也可以在 U-SQL 查询中使用 ROWNUMBER()

    @transactions =
       SELECT *,
       ROW_NUMBER() OVER(PARTITION BY Id ORDER BY Id DESC) AS RowNumber
       FROM @searchlog;
    
    @result =
       SELECT Id,Name,Description,Age
       FROM @transactions
       WHERE RowNumber == 1;
    

    这将获得文件中的唯一记录。

    【讨论】:

      【解决方案2】:

      由于可伸缩性有限,U-SQL 表不提供 UNIQUE 约束,因此您必须确保在唯一列上使用 ANTI SEMIJOIN 以在插入新数据之前过滤掉新数据上可能的重复项。

      【讨论】:

        猜你喜欢
        • 2012-08-07
        • 1970-01-01
        • 2017-08-07
        • 1970-01-01
        • 2018-11-12
        • 2020-09-23
        • 2011-11-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多