两段近似的SQL,执行情况却不大相同?

jiangshachina jiangshachina 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
SQL A:
select * from tableA
where exists (select * from tableA a, tableB b where a.pk_a=b.pk_a and tableA.pk_x=a.pk_x)

SQL B:
select * from tableA
where exists (select * from tableA a inner join tableB b on a.pk_a=b.pk_a and tableA.pk_x=a.pk_x)

在Oracle10g中执行上述两段语句,发现SQL A能够正常执行,但执行SQL B时,却报找不到字段tableA.pk_x。
请问,如何解释这一现象?

另,上述两段代码在SQL Server中均能够正常执行。
...全文
评论 10
收藏 已收藏
分享
返回顶部
jiangshachina
基础和管理 17,379 成员 95,111 内容