列值对于另一个列值应该是唯一的

Column value should be unique to another column value

我正在创建一个 SSIS 程序包,如果一个产品名称存在重复的产品 ID,则需要通知用户。我们通过在共享位置发送给我们的 csv 文件检索产品。

在这个例子中,我的产品 chair 和 lamp 的 ProductID = 1。

所以基本上 productID = 1 是重复的,因为产品 lamp 也使用了它。因此,通知用户使用了重复的 ProductID。

有人可以告诉我如何做到这一点吗?

您可以通过 3 种方法做到这一点:

  1. 将数据插入分段 table 并使用类似于以下内容的查询:

    SELECT PRODUCTID, COUNT(*) 
    FROM TEMPTABLE
    GROUP BY PRODUCTID
    HAVING COUNT(*) > 1
    
  2. 使用脚本组件计算出现次数并在发现重复项时抛出异常。查看以下 link 了解更多信息:

  3. ProductID 上使用聚合转换并应用分组依据计数,查看以下 link 以获得更多信息:

获取重复 PRODID 值的计数很容易。

使用 Aggregate 转换使用

Column PRODID - Operation Group By
Column (*) - Operation Count all

在其后跟一个 Conditional Split,其中 [Count all] > (DT_UI8)1

如果输出中有任何记录,则存在一个或多个重复。