【100分在线等】这样使用Left JOIN有危险吗?

rainychan2009 rainychan2009 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
先说说我的用法吧
SELECT A.*, C.DisplayName FROM Table_A A LEFT JOIN TABLE_B B on A.id = B.Ref_A_ID LEFT JOIN Table_C C on B.Ref_C_ID = C.ID WHERE 1 = 1
先解释下为什么这么写: A 是主表,B是辅助表,B中有一个字段是引用C的PK.最后呈现出来的就是通过C进行一个ID到DisplayName的转换。
目前按照这么写满足了我的要求了:1 SQL语法满足 2 确实按照我的想法在工作。
但是我的疑惑就是 LEFT JOIN的用法。
A LEFT JOIN B,就是A和B做笛卡尔乘积,形成一个虚拟表,如果 LEFT JOIN C ON A.X = C.Y 这样也好理解,但是我这里写成B和C做Left JOIN?是不是意味着 A和B的结果不会受到C和B的影响呢?

...全文

相关推荐

评论 12
收藏 已收藏
分享
返回顶部
rainychan2009
疑难问题 22,298 成员 121,727 内容