如何根据单独表中的数据删除必须从删除中删除某些重复项的重复项?

时间:2014-04-18 02:48:58

标签: sql duplicate-removal

我正在使用SQL 2008尝试删除重复项以获得某种独特的情况,而我却无法弄清楚或找到解决方案。

我有一个表(CUST_REF),它有一个CUST_ID列,它是表中的外键(CUST_MAST)。 CUST_REF是我关注的重复项表。 CUST_REF中有重复记录,如下面的示例所示,ID 1& 2和3& 4(不包括ID列)。 ID 3& 4表是该表中的重复项,如果我们在CUST_MAST中查找它们的CUST_ID,我们会看到它们引用了不同的CUST_NO值,因此这些重复记录很好,我不想删除它们中的任何一个。

CUST_REF
ID   CUST_ID   DEPT   DIV   ATT_NAME   ATT_VALUE      
 1        11     01    01       PASS       12345
 2        12     01    01       PASS       12345
 3        15     02    21       PASS       98765
 4        16     02    21       PASS       98765
 5        23     10    11       PASS       98765

CUST_MAST
CUST_ID   CUST_NO
     11       310
     12       310
     15       242
     16       911
     23       750

我使用Group By DEPT, DIV, ATT_NAME Having Count > 1在CUST_REF中找到重复项,但我不知道如何使用其他表中的CUST_NO过滤重复项。非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

在CUST_ID上加入表,然后将CUST_ID添加到您的Group By。这将包括分组前的第二个表,并避免“错误”重复。