Sql减去连接

时间:2015-01-13 04:10:04

标签: sql oracle

我有点像这样的场景我有两个名为messagesmessage_fields

的表

有这样的关系message_fields保存message_id并使用它我可以得到消息的name,我试图比较两个Scemas相同的表这样

select Message_id,field_id from DB1.MESSAGE_FIELDS a minus select
Message_id,field_id from DB2.MESSAGE_FIELDS

但为此,我需要知道name以及我知道我可以在两个队列的select中放置显示名称,但我不想减去name而不影响当前查询如何获取粒子message_id

的Db1.message名称

我尝试了INNER / LEFT / RIGHT JOINS但是没有工作

1 个答案:

答案 0 :(得分:4)

这是你想要的吗?

with mf as (
      select Message_id,field_id from DB1.MESSAGE_FIELDS a
      minus
      select Message_id,field_id from DB2.MESSAGE_FIELDS
     )
select mf.*, m.name
from mf join
     messages m
     on mf.message_id = m.message_id;