关于 JOIN 语句条件的筛选优化问题
select a.xx,b.xx from a left join b on a.id = b.id where a.id = 1
select a.xx,b.xx from a left join b on a.id = b.id and a.id = 1
select a1.xx,b.xx from (select a.xx from a where a.id = 1) a1 left join b on a1.id = b.id
请问以上三个语句哪个效率高?
[解决办法]
select a.xx,b.xx from a left join b on a.id = b.id and a.id = 1
[解决办法]
为什么?我觉的差不多啊~~~
[解决办法]
第三条的效率更高,下午研究得到的结果
[解决办法]
不敢下结论,关注一下。
[解决办法]
第三条会更高的:
----
第一条是将数据生成后才进行ID=1的筛选
第二条是在查询时进行ID=1的筛选
第三条是先筛选后进行查询
[解决办法]
不太懂,关注...效率问题,没有研究过
[解决办法]
第二条比第一条高
因为实现筛选在联接
[解决办法]
第二条改下就可以先筛选后连接了:
select a.xx,b.xx from a left join b on
( a.id = 1 and a.id = b.id )
[解决办法]
xuexi