我有兩個SQLite表我想比較。要設置表:比較兩個SQLite表的差異
CREATE TABLE A (Value);
CREATE TABLE B (Value);
INSERT INTO A VALUES (1);
INSERT INTO A VALUES (1);
INSERT INTO B VALUES (2);
INSERT INTO B VALUES (1);
我比較兩張表得到的最接近是使用下面的SQL:
SELECT 'A' AS Diff, *
FROM (SELECT * FROM A EXCEPT SELECT * FROM B)
UNION ALL
SELECT 'B' AS Diff, *
FROM (SELECT * FROM B EXCEPT SELECT * FROM A)
我想要的結果是
A; 1
B; 2
不過,我只得到
B; 2
因爲t他除了關鍵字刪除所有來自表A的1,無論表B中有多少個1。
我應該如何比較這兩個表?
你的表的設計是有點太簡單了。介紹另一列,實際上會導致值爲1的行不同,否則您將無法獲得結果。 – 2010-10-31 04:52:35