2017-02-11 87 views
0

我有兩個表,其中應該包含相同的信息。比較兩個SQL表來找出缺少的東西。

表1 - 發票報頭(客戶名稱等) 表2 - 發票行(股票參考等)

表1基本上是表2的各匹配線的概要我知道表1是正確的和包含所有的數據。

這些匹配的鍵將是日期,發票編號和帳號。

有沒有辦法看到表2中缺少什麼?

+0

您能分享您的餐桌結構嗎? – Mureinik

回答

0

您應該使用Left Outer Join來顯示左表中的內容,但不是右邊的內容。在這種情況下,左表是您的標題,右是發票行。 MSDN頁面上有很多示例,並且谷歌查詢出現了很多結果。 (儘量不要在這裏提供一個例子,因爲這是從經驗中學習的真棒機會。)

+0

謝謝我會讓你知道我是怎麼做到的。 –

0

是的,你可以使用:

Select * from table 1 
minus 
Select * from table 2; 

或者你可以使用

SELECT column1 [, column2 ] 
FROM table1 [, table2 ] 
[WHERE condition] 

EXCEPT 

SELECT column1 [, column2 ] 
FROM table1 [, table2 ] 
[WHERE condition] 

的SQL EXCEPT子句/運算符用於組合兩個SELECT語句,並返回第一個SELECT語句中不由第二個SELECT語句返回的行。