数据建立
感谢:
CREATE TABLE Table1
(Id int, champ1 varchar2(1), champ2 varchar2(1), champ3 varchar2(1))
;
INSERT ALL
INTO Table1 (Id, champ1, champ2, champ3)
VALUES (1, 'A', 'S', 'Q')
INTO Table1 (Id, champ1, champ2, champ3)
VALUES (2, 'D', 'K', 'A')
INTO Table1 (Id, champ1, champ2, champ3)
VALUES (3, 'D', 'A', 'S')
SELECT * FROM dual
;
CREATE TABLE Table2
(Id int, champ1 varchar2(1), champ2 varchar2(1), champ3 varchar2(1))
;
INSERT ALL
INTO Table2 (Id, champ1, champ2, champ3)
VALUES (1, 'A', 'S', 'Q')
INTO Table2 (Id, champ1, champ2, champ3)
VALUES (2, 'Q', 'A', 'A')
INTO Table2 (Id, champ1, champ2, champ3)
VALUES (3, 'A', 'A', 'K')
SELECT * FROM dual
;
下面的查询会给你的差异
SELECT *
FROM ((SELECT *
FROM table1
minus
SELECT *
FROM table2)
UNION
(SELECT *
FROM table2
minus
SELECT *
FROM table1));
ID CHAMP1 CHAMP2 CHAMP3
2 D K A
2 Q A A
3 A A K
3 D A S
什么样的比较? – Hawk
我需要比较表1上的数据和表2上的数据,如果两个表中的数据不相同,则此过程会提供表3。 – user3441432
@ user3441432你对这个问题的描述是相当不错的,如果你将包括你所尝试过的投票可能会在另一个方向去。 – maraca