比较不具有相同行数但列数相同的表

时间:2013-10-22 09:10:49

标签: sql oracle

我有两个表,例如表A和表B

AB具有相同的列数,但表A几乎没有额外的行。

我想知道是否存在可以比较表AB的查询,并删除表A中存在的额外行数。

最好有一个临时表来删除值。甲

有什么建议吗?

2 个答案:

答案 0 :(得分:0)

试试这个: [编辑]

Delete from A where id in 
             (
                Select id from ((select id from A) minus (select id from B))
             );

以上查询假设A和B具有相同的列,其中包含id列[唯一]。

答案 1 :(得分:0)

select * from tableA a left join TableB b on a.id = b.id

将给出表数据的差异。您可以使用null值来删除tableA

中的额外数据