2017-09-25 66 views
0

我目前需要在連接表中找到entrys匹配相同的模式。MySQL:查找「相同」數據

表看起來像

id job_id data1 ext_id 
-- ------ ----- ----- 
1  15  1  3 
2  15  2  7 
3  1  1  5 
4  1  2  4 
5  5  1  3 
6  5  2  7 

所以我的基本信息是JOB_ID 15

id job_id data1 ext_id 
-- ------ ----- ----- 
1  15  1  3 
2  15  2  7 

的數據,我想找到JOB_ID 5,因爲在EXT_ID和數據1的數據是一樣的工作15. job_id 1的數據不同,所以我不想找到它。 任何想法如何做到這一點?

+0

到目前爲止您嘗試過什麼? – KMS

+0

嘗試了不同的方式將表連接在一起..但說實話,我根本不知道如何根據數據進行選擇。我正在考慮在檢索有關哪些組合適用於作業15的信息後手動構建sql查詢,但必須有更優雅的方式,我希望:) – Relicted

+0

嘗試使用job_id = 5 where子句 – iamsankalp89

回答

0

我相信你想這樣的:

 
select * 
from  your_table 
group by data1, 
     ext_id 
having count(*) > 1 

這篇文章解釋了它: How to find duplicates in 2 columns not 1

編輯

我相信這應該返回已mathcing data1和EXT_ID值

所有行
 
select * from table t1 
INNER JOIN table t2 ON t1.data1=t2.data1 and t1.ext_id=t2.ext_id 
+0

@einars請告訴我輸出 – iamsankalp89

+0

可悲沒有。這並沒有什麼幫助。我試圖找到給定ID的數據「重複」。 – Relicted

+0

@Relicted檢查我的編輯,也許這就是你需要的。 –