簡體   English   中英

MySql-聯接-兩次聯接同一表

[英]MySql - Joins - Joining same table twice

當有大量記錄時,我們如何才能更高效地實現這一目標?

SELECT M.t1, M.t2,A.x2,B.x2
FROM M
JOIN  P as A ON A.x1 = M.t1
JOIN P as B ON B.x1 = M.t2;

請注意,索引已應用於M.t1和M.t2。

如果您有“一噸”記錄,那么您的查詢可能會返回“一噸”甚至更多的記錄。 您所能做的就是添加索引。

對於此查詢,我建議在P(x1, x2)上建立索引。 您可能還會發現M(t1)上的索引有效-僅僅是因為不需要讀取原始數據頁,只需要讀取索引。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM