2012-08-29 77 views
-1

对不起,我的英语不好,LEFT JOIN Vs的子查询Mysql的

我有两个querys像

1)

select t1.id,case when t2.p_id IS NULL then 'Text' ELSE (select t3.data from t3 where t3.p_id = t2.p_id) END FROM t1,t2 
WHERE t2.id = t1.id 

而另一个查询

2)

select t1.id, t3.data 
FROM t1,t2 left join t3 on t3.p_id = t2.p_id WHERE t2.id = t1.id 

以上哪两项查询速度更快,为什么?

感谢您给予时间。

+1

使用'explain select ...'来查看区别。 –

+1

你有没有复习两个'解释? – Taryn

+1

加入主键应该是有效的。 – Tchoupi

回答

1

我没有详细阅读您的查询,但通常第二个查询的结构更好。