0
我有兩個SQLite(也是MySQL可能很好)數據庫具有相同的表結構,但數據不同,我必須從一個獲取所有行,並逐個檢查它們是否完全相同(數據相同)載於第二個。匹配數據庫數據
我需要這樣做是因爲有最終的是/否/部分報告(並在第二步中,在第二個數據庫中插入「否」並更新「部分」)。
任何人都知道是否有一個「聰明」的方法來做到這一點?
我有兩個SQLite(也是MySQL可能很好)數據庫具有相同的表結構,但數據不同,我必須從一個獲取所有行,並逐個檢查它們是否完全相同(數據相同)載於第二個。匹配數據庫數據
我需要這樣做是因爲有最終的是/否/部分報告(並在第二步中,在第二個數據庫中插入「否」並更新「部分」)。
任何人都知道是否有一個「聰明」的方法來做到這一點?
SELECT COUNT(*) num_mismatch
FROM table1 JOIN table2 ON (..whatever the unique ID you use for matching is...)
WHERE table1.col1 != table2.col1 OR table1.col2 != table2.col2 OR ......etc.
如果num_mismatch不爲0,則表示不匹配。您也可以更改COUNT(*)
以輸出不匹配的ID。也可以使用NOT EXISTS
,如果出現不匹配,則會返回更快,因爲它會在第一次不匹配後停止檢查。