我有兩個表,其中應該包含相同的信息。比較兩個SQL表來找出缺少的東西。
表1 - 發票報頭(客戶名稱等) 表2 - 發票行(股票參考等)
表1基本上是表2的各匹配線的概要我知道表1是正確的和包含所有的數據。
這些匹配的鍵將是日期,發票編號和帳號。
有沒有辦法看到表2中缺少什麼?
我有兩個表,其中應該包含相同的信息。比較兩個SQL表來找出缺少的東西。
表1 - 發票報頭(客戶名稱等) 表2 - 發票行(股票參考等)
表1基本上是表2的各匹配線的概要我知道表1是正確的和包含所有的數據。
這些匹配的鍵將是日期,發票編號和帳號。
有沒有辦法看到表2中缺少什麼?
您應該使用Left Outer Join來顯示左表中的內容,但不是右邊的內容。在這種情況下,左表是您的標題,右是發票行。 MSDN頁面上有很多示例,並且谷歌查詢出現了很多結果。 (儘量不要在這裏提供一個例子,因爲這是從經驗中學習的真棒機會。)
謝謝我會讓你知道我是怎麼做到的。 –
是的,你可以使用:
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語句返回的行。
您能分享您的餐桌結構嗎? – Mureinik