0
A
回答
1
如果我找到了你,這就是你想要的。
SELECT
t1.name
FROM
Table1 t1
WHERE
t1.name
NOT IN
(
SELECT t2.name
FROM Table2 t2
JOIN t1
ON t2.name = t1.name
)
0
您需要指定一列(或多列),用於「匹配」行,以確定它們是否爲「重複項」。
我打算假設(缺少任何模式信息),列名是id
。
「抗加盟」模式通常是最好的執行選項:(性能依賴於一大堆的因素)
SELECT a.id
FROM table1 a
LEFT
JOIN table2 b
ON a.id = b.id
WHERE b.id IS NULL
你的其他選擇是使用NOT EXISTS謂:
SELECT a.id
FROM table1 a
WHERE NOT EXISTS
(SELECT 1
FROM table2 b
WHERE b.id = a.id
)
或者,使用NOT IN謂詞:
SELECT a.id
FROM table1 a
WHERE a.id NOT IN
(SELECT b.id
FROM table2 b
WHERE b.id IS NOT NULL
)
生成的執行計劃和每個這些語句的性能可能會有所不同。對於大集合,「反連接」模式(第一個查詢)通常表現最佳。
相關問題
- 1. 比較列表中的2個條目
- 2. 比較兩個Google表格,並僅複製非重複行
- 3. 比較2 ArrayLists並刪除重複項
- 4. 比較數組中的條目並刪除重複項(PHP,MySQL)
- 5. 比較主條目,並從子表
- 6. 查找重複和比較
- 7. 比較2個文件並保留不共同的條目
- 8. T-SQL如何:比較和列出表中的重複條目
- 9. 比較2個文件並刪除重複行只有一次
- 10. 內連接多個條目表比較
- 11. 遍歷並比較2個數組列表並找到匹配項
- 12. 比較excel中的兩個列表並刪除非java中的重複項
- 13. 比較2個大的sql文件,並找到差異來恢復數據
- 14. SQL:比較兩個表與重複
- 15. 比較2個數組並找到與Ramda相同的值
- 16. 比較兩個dataframes並找到列
- 17. 在表中查找重複條目
- 18. 將2個列表與一個foreach循環進行比較,並從未找到的項目創建新列表
- 19. 比較2個數據表
- 20. 比較從2個表
- 21. 比較從2個表
- 22. 比較兩個列表<string>並打印重複項
- 23. 如何比較兩個表並刪除SQL中的重複行?
- 24. 如何比較表,找到重複的,也找到列有不同的價值
- 25. LINQ比較2表,僅返回上一項,並非全部
- 26. 比較重複值的數目在2分Excel列
- 27. 馬克並刪除重複比較
- 28. 比較2個日期與條件
- 29. 角2:比較2個表格
- 30. 比較兩個excel工作表,並找到兩個僅基於電子郵件地址列的唯一條目
你能否給我一張你的表格,並指定你想要不平等的領域? – Theolodis
哦,等等,我認爲它現在可能正在工作,我試着用「IN」而不是「NOT IN」 – user1876234
但是如果你拿到IN,你實際上得到了重複。 – Theolodis