我是SQL查询的新手。 r1,r2是数据列表。
我想实现r3 = r1 - (r1 - r2)而不相交。 和 - 设置操作。 并且stuid是检查值为负。
我认为遵循SQL Query是有效的。
create table r3 as
select *
from r1;
create table r4 as
select *
from r1;
delete from r3
where r3.stuid in
(delete from r4
where r4.stuid = r2.stuid)
(我必须使用deletee Query两次)
有用吗?
答案 0 :(得分:1)
您似乎想要两组之间的重叠。这样做怎么样:
select r1.*
from r1
where exists (select 1 from r2 where r2.stuid = r1.stuid);
如果你想要一张新桌子:
create table r3 as
select r1.*
from r1
where exists (select 1 from r2 where r2.stuid = r1.stuid);