【发布时间】:2011-04-22 21:03:20
【问题描述】:
我需要帮助加入 3 个表,它们并非全部互连
假设我有表 A、B、C
这里是关系
A.type = B.type
A.model = C.model
我需要做的是内连接 A 和 B 并返回所有匹配的 A 记录。接下来我需要从 C 中提取与先前连接匹配的记录。
或者换句话说,C中的所有记录都在A中,而A在B中
希望这是有道理的。抱歉没有数据示例。
我试过了
select
c.*
from
c, a, b
where
c.model_ = a.model_
and a.type_ = b.type_
但收到此消息“错误:查询具有 MERGE JOIN CARTESIAN。您必须更正 where 子句才能在 select 语句中正确连接表。'
【问题讨论】:
-
这不是 Oracle 错误。事实上,“MERGE JOIN CARTESIAN”本身并不是“错误”。