当有大量记录时,我们如何才能更有效地实现这一目标?
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)
上的索引有效 - 只是因为不需要读取原始数据页,只需读取索引。
关于MySql - 连接 - 连接同一个表两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54958565/