2012-08-29 104 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

我沒有詳細閱讀您的查詢,但通常第二個查詢的結構更好。