2011-08-19 82 views
0

我需要從3個不同的表中的數據:Mysql性能:1查詢3個表或2個查詢?

  1. CATERGORY表

  2. Scoretable 1

  3. Scoretable 2

現在什麼是性能更好?

  1. 把3個分隔的SELECT查詢

  2. 使2個查詢和連接scoretable 1和2並進行正常的選擇查詢的類別

  3. Connect在1所有3個疑問?

數2:

SELECT scoretable1.category, scoretable1.score, scoretable2.score 
FROM scoretable1, scoretable2 
WHERE scoretable1.consultant = scoretable2.consultant 
AND scoretable2.consultant = '14' 
AND scoretable1.category = scoretable2.category 

非常感謝您!

P.S.類別表非常小,因此我可以將它作爲緩存文件導出爲序列化數組? (也許這張桌子的最佳方式)

+0

你爲什麼不嘗試兩種方式,看哪個更快? – aroth

回答

1

我的猜測是最好在一個查詢中完成它。但我並不完全確定。也許query analyser可以幫助你在這裏。

0

最快的將是一個INNER從類別表連接到兩個人,只是儘量做到1000程序中選擇和檢查所花費的時間與所有不同的方法