2017-06-15 160 views
0

我对SQL游戏相当陌生,我试图填补我们账户人员数据验证的空白。SQL查询 - 查找重复的字段

我所拥有的是一个表(Truck_Invoice)具有以下栏目:

Invoice_ID, Invoice_Date, Docket_ID, Docket_Date. 

我所拥有的是多Docket_IDs到Invoice_IDs但我们发现在多个Invoice_IDs重复Docket_IDs ......我期待发现我可以创造我可以运行产生的结果的查询办法:

Invoice_ID Docket_ID Invoice_Date Docket_Date  
1001   2000  01/03/2015  01/02/2015  
1005   2000  01/04/2015  01/02/2015 

我感谢所有帮助你们能帮助我!

一品脱谁就能得到我的人这场比赛的胜利

+0

要获得重复的'Docket_Id'值,您可以使用具有'GROUP BY Docket_Id'和'HAVING COUNT(*)> 1'子句的查询。你可以在这里找到很多例子来解决这个问题。 –

+0

为什么保留这两个特定记录背后的逻辑是什么?你还可以显示生成这个输出的样本输入吗? –

+0

你想在结果中多次重复docket_id吗?我想,我不明白这个问题的重点。 –

回答

0
SELECT Invoice_ID, Docket_ID, Invoice_Date, Docket_Date 
FROM Truck_Invoice 
WHERE Docket_ID IN 
(
SELECT Docket_ID FROM Truck_Invoice GROUP BY Docket_ID HAVING COUNT(*) > 1 
) 

我希望它会为你工作。

+0

谢谢伙伴!这绝对有效。 我在想 - 如果Docket_ID> 1和Invoice_ID不同,会不会有一种方法可以添加一个条件,我可以补充说。 。 我所拥有的是基于案卷项目的同一案卷的多行。 –

0

通过Docket_ID排序是否解决问题了吗?

它看起来像这个查询生成你正在寻找的结果;

SELECT Invoice_ID, Invoice_Date, Docket_ID, Docket_Date 
FROM Truck_Invoice 
ORDER BY Docket_ID