是否有办法避免在添加/截断分区之外的U-SQL表中添加重复记录。假设两个记录中只有唯一标识符不同。
答案 0 :(得分:3)
您还可以在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;
这将获得文件中的唯一记录。
答案 1 :(得分:2)
由于可伸缩性有限,U-SQL表不提供UNIQUE约束,因此您必须确保在唯一列上使用ANTI SEMIJOIN
以在插入之前过滤掉新数据上可能存在的重复项它