2017-05-08 40 views
-1

我有3個表,tbl_no2016trans,tbl_2016_remittbl_2015_remit如何從其他表中選擇數據,如果它不存在於另一個表中的mysql

tbl_no2016trans

|PEN|EMPLOYER| 
| 1 | COMP_A | 
| 2 | COMP_B | 
| 3 | COMP_C | 
| 4 | COMP_D | 
| 5 | COMP_E | 

tbl_2016_remit

|PEN|EMPLOYER|2016REMIT| 
| 1 | COMP_A | 1000 | 
| 2 | COMP_B | 1500 | 
| 5 | COMP_E | 2500 | 

tbl_2015_remit

|PEN|EMPLOYER|2016REMIT| 
| 3 | COMP_C | 1000 | 
| 4 | COMP_D | 500 | 

需要從tbl_2015_remit OR tbl_2016_remit在筆中存在tbl_no2016trans選擇所有列。

我用這個代碼

SELECT * FROM tbl_2015_remit WHERE PEN IN (SELECT PEN FROM tbl_no2016trans) ...但我不知道如何把病情其中SELECT * FROM tbl_2016_remit如果它不存在tbl_2015_remit

我也使用了LEFT JOIN,但仍然輸了。

SELECT * 
FROM 
    tbl_2015_remit 
     LEFT JOIN 
    tbl_2016_remit 
ON tbl_2015_remit.pen = tbl_201c_remit.pen 
WHERE 
    PEN IN (SELECT PEN from tbl_no2016trans) 
+0

是tbl_c有任何foriegn鍵 –

+1

見http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-一個非常簡單的sql查詢 – Strawberry

+0

@ArunKumaresh。不,他們都有主要的關鍵是PEN。它只能出現在兩張桌子上。 – Clorae

回答

1

你可以試試Union all嗎?

SELECT * FROM tbl_2015_remit WHERE PEN IN (SELECT PEN FROM tbl_no2016trans) 
union all 
SELECT * FROM tbl_2016_remit WHERE PEN IN (SELECT PEN FROM tbl_no2016trans) 
+0

我很喜歡這個。非常感謝。這真的很有幫助。 – Clorae

相關問題