2012-02-28 47 views
0

同我有這樣的一個表:SQL查詢來檢查值是否在兩個表

spsscode spssdescription brpcode brpdescripton 

1   cash deposit  x   cash deposit 
7   withdraw   y   withdraw 
8   cheque deposit w   cheque deposit 
9   bank transfer  v   bank transfer 

在這裏它的前端時,輸入的代碼是SPSS和它存儲在形式的信息數據庫中的BRP代碼(如表中定義)

現在我有一個新的版本,其中沒有對此表進行更改,所以我必須編寫一個查詢來檢查最新版本中的新表是否與舊錶或不 (即1 = x,7 = y,8 = w,9 = v)。

的方式,我可以從舊錶中選擇SPSS代碼和BRP代碼,並檢查他們對這些代碼在新表

+0

什麼數據庫和版本,我們在談論什麼? – beny23 2012-02-28 12:31:34

回答

1

嘗試:

select spsscode, spssdescription, brpcode, brpdescripton, min(which_table) 
from 
(select t.*, 'old' which_table from oldtable t 
union all 
select t.*, 'new' which_table from newtable t) v 
group by spsscode, spssdescription, brpcode, brpdescripton 
having count(*) < 2