2013-08-29 25 views
1

我收到了一些幫助,但它沒有解決我的問題。我正在嘗試從包含多個發票編號和發票代碼的表格創建下表。我希望看到任何代碼的發票號碼(2個或更多的相同編號)(預計同一發票號碼有多個代碼)。我並不是SQL全新的人員,但我遠沒有專家,並且尋找指導。請見下表Sql語句需要顯示重複到1

Invoice#  Inv Code 
22567   CN 
22567   FR 
25855   CN 
25855   FR 

還有其他的發票,並在表中的其他代碼,但我只希望那些有2個或更多重視他們相同的發票編號的代碼。 Thnx

+0

([使用2個不同的代碼重複記錄搜索Select語句]可能重複http://stackoverflow.com/questions/18494766/select-statement-for -duplicate-record-search-using-2-different-codes) –

+0

而不是在同一主題上發佈新問題,更新你現有的問題(並添加一些更多的細節,包括你試過的和你期望的)。 –

回答

0
SELECT DISTINCT t1.`Inv Code` FROM table t1 
join table t2 ON t1.`Inv Code`=t2.`Inv Code` 
AND t1.`Invoice#`=(SELECT `Invoice#` from table group by `Invoice#`having count(*) >1) 

好的,現在就試試。

http://sqlfiddle.com/#!2/922f7/3

1

我想你想只具有相同數量的兩個或兩個以上的發票記錄。你應該試試這個

select * 
from tab_name tn 
where (select count(*) From tab_name where invoice = tn.invoice) > 1 
0

我在想你可以在發票上自己加入並獲得發票匹配和代碼沒有的行。

希望這個SQL滿足你的需要:

select A.invoice 
FROM table1 A INNER JOIN table1 B 
ON A.INVOICE=B.invoice 
AND A.code<>b.CODE 
GROUP BY 1