您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

左联接中的歧义(仅适用于Oracle?)

左联接中的歧义(仅适用于Oracle?)

恐怕我不能告诉你为什么你没有例外,但是我可以推测为什么它选择了CATEGORIES版本的列而不是PARTS版本的列。

据我了解,在左联接的情况下,查询(PARTS)中的“主”表具有歧义性

尚不清楚从概念上看查询时,“主”是指左联接中的左表,还是“驱动”表。但是无论哪种情况,您在“主”表中所看到的都是“主”表。您编写的查询不一定是该查询实际执行中的“主”表。

我的猜测是,Oracle在执行查询时只是使用它命中的第一个表中的列。并且由于sql中的大多数单独操作不需要先击打一个表,因此DBMS将在解析时决定哪个是最有效的扫描对象。尝试获取查询的执行计划。我怀疑它可能显示它先击中类别,然后击中PARTS。

Oracle 2022/1/1 18:47:04 有350人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶