0
我需要確定表中缺少哪些記錄,並將另一個表用於比較。比較MySQL中的表數據
我想:
SELECT * FROM tableA WHERE tableA.id NOT IN (SELECT tableB.id FROM tableB)
它正常時的數據是小課程,但表A和tableB的超過40萬點的記錄都已經和工藝卡,有沒有做到這一點更優化的方式工作?
我需要確定表中缺少哪些記錄,並將另一個表用於比較。比較MySQL中的表數據
我想:
SELECT * FROM tableA WHERE tableA.id NOT IN (SELECT tableB.id FROM tableB)
它正常時的數據是小課程,但表A和tableB的超過40萬點的記錄都已經和工藝卡,有沒有做到這一點更優化的方式工作?
連接通常比IN和NOT IN子句更快。試試這個:
SELECT tableA.*
FROM tableA left join tableB on tableA.id = tableB.id
WHERE tableB.id is null
如果你想在任一表中丟失行,你需要兩個查詢。 –