--oracle的minus
--返回第一个表中有、第二个表中没有的数据
create table union_tab_1 (
id int,
val varchar(10)
);
create table union_tab_2 (
id int,
val varchar(10)
);
insert into union_tab_1 values(1, 'a');
insert into union_tab_1 values(2, 'b');
insert into union_tab_1 values(3, 'c');
insert into union_tab_2 values(1, 'a');
insert into union_tab_2 values(1, 'a');
insert into union_tab_2 values(2, 'b');
insert into union_tab_2 values(4, 'd');
select * from union_tab_1
minus
select * from union_tab_2;
select * from union_tab_2
minus
select * from union_tab_1;
select * from union_tab_1
union
select * from union_tab_2
minus
select a.id, a.val from union_tab_1 a, union_tab_2 b where a.id = b.id and a.val = b.val
minus
select a.id, a.val from union_tab_1 a, union_tab_2 b where a.id = b.id and a.val = b.val;
--返回第一个表中有、第二个表中没有的数据
create table union_tab_1 (
id int,
val varchar(10)
);
create table union_tab_2 (
id int,
val varchar(10)
);
insert into union_tab_1 values(1, 'a');
insert into union_tab_1 values(2, 'b');
insert into union_tab_1 values(3, 'c');
insert into union_tab_2 values(1, 'a');
insert into union_tab_2 values(1, 'a');
insert into union_tab_2 values(2, 'b');
insert into union_tab_2 values(4, 'd');
select * from union_tab_1
minus
select * from union_tab_2;
select * from union_tab_2
minus
select * from union_tab_1;
select * from union_tab_1
union
select * from union_tab_2
minus
select a.id, a.val from union_tab_1 a, union_tab_2 b where a.id = b.id and a.val = b.val
minus
select a.id, a.val from union_tab_1 a, union_tab_2 b where a.id = b.id and a.val = b.val;