【发布时间】:2018-10-29 08:08:22
【问题描述】:
Select a.OPID, b.Name, b.Dept
from table1 a, table2 b, table3 c
where
(CASE
WHEN a.OPID like 'D%'
THEN a.OPID = c.OPID and c.OPID = b.ID
ELSE a.OPID = b.ID
END);
Table1 包含两种类型的账户,数字账户和以字母 D 开头的子账户。子账户与 table3 上的数字账户绑定,但我需要从只有数字的表 2 中获取个人数据帐户。
我需要对以 D 开头的记录与数字记录不同的连接集。如果可能,我想避免使用联合。
有什么建议吗?
【问题讨论】:
-
提供样本数据和期望的结果。你的加入真的没有意义。
标签: sql oracle join conditional