我有一个基本上执行如下操作的查询:
select a, b, c
from tab
where tab.state = 'A'
minus
select a, b, c
from tab
where tab.state = 'B'
在此示例中a
,b
、 和c
是此表的关键字段。state
也是键的一部分,我正在尝试查找状态 A 有记录但状态 B 没有记录的情况。我想报告另一个字段(不在键中)value
,,对于不同州的相同记录,这可能会有所不同。例子:
abc 状态值 --------------------- 1 1 1 12 1 2 2 1002 1 3 9 一个 43 1 1 1 乙 17.34 1 2 2 乙 1002
在这种情况下,我对键是1,3,9
状态为 A 的行感兴趣。我也想获取value
列的值,但如果我尝试:
select a, b, c, value
from tab
where tab.state = 'A'
minus
select a, b, c, value
from tab
where tab.state = 'B'
我会得到两行:
abc 值 ---------------- 1 1 1 12 1 3 9 43
基本上,我想value
在结果集中有,但不参与minus
. 我觉得我在这里遗漏了一些明显的东西,但也许我太累了,无法得到它……;)