找到两个表之间的重复

时间:2016-04-05 09:59:47

标签: sql oracle duplicates oracle10g

我有两张表A和B,表A中有一列额外的列。 我想找到表b中存在的表A的重复记录。如果发现我想更新表A的列,它包含表B中的记录。我在这两个表中都没有主键。  到目前为止,我已尝试使用union all进行以下查询。

Select * from (
Select rownum over (partition by  ename,enum order by enum) r ,* from
(Select *from a
Union all
Select * from B) data
)d where r>1

它不起作用,我被困住了。它是一个oracle查询..在同一个查询中我想更新表A列如果所有列都与表B匹配则说flg为1,否则为0

1 个答案:

答案 0 :(得分:2)

你的问题缺乏很多信息,但如果我理解正确,你可以使用Integer.toString( (int)sent_byte[i], 16 );

EXISTS()

我的查询假设表格之间的关系是UPDATE a SET a.YourFlag = 1 WHERE EXISTS(SELECT 1 FROM b WHERE a.ename = b.ename and a.enum = b.enum) ?如果不是这种情况,请将子查询中的where子句更改为您的关系。