首页 新闻 搜索 专区 学院

【mysql】select 和 left join 的区别是啥

0
[已解决问题] 解决于 2018-07-11 17:05

explain select a.id,b.id from A a left join B b on a.b_id=b.a_id,

后结果

 

 

和 explain select a.id ,(select b.id from B b where a.b_id=b.a_id) as b_id from A a

括号里面的查询属于子查询吗,

这俩区别是啥一个left join,一个 直接select,我用explain除了select_type没啥区别呀,

这样哪个比较快为什么,俩区别是什么

_legends的主页 _legends | 菜鸟二级 | 园豆:499
提问于:2018-07-10 14:56
< >
分享
最佳答案
0

经过个人实践,证明子查询效率特别低,而一般的子查询都可以由关连查询来实现相同的功能,关联查询的效率要提高很多,所以建议在数据查询时避免使用子查询(尤其是在记录很多时),而最好用关联查询来实现。
 

奖励园豆:5
温情亿度开发者 | 菜鸟二级 |园豆:315 | 2018-07-11 14:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册