优化多个连接SQL

时间:2018-05-20 00:26:05

标签: mysql sql wordpress performance left-join

我需要将一个表(表A)中的所有列连接到另外两个表(B& C)中的单个列。我的SQL工作但很慢。问题来自加入A和C.我已经考虑了优化,但没有找到任何加速它的东西。不幸的是,我无法改变桌面设计。

SELECT tableA.*, 
       tableB.user_email,
       tableC.transaction_number 
FROM tableA 
LEFT OUTER JOIN tableB 
   ON tableA.user_id=tableB.id 
LEFT OUTER JOIN tableC 
   ON tableA.user_id=tableC.user_id 
   AND A.timestamp=C.timestamp 
ORDER BY A.timestamp DESC;

感谢您的任何见解!

1 个答案:

答案 0 :(得分:1)

对于您的查询,您需要tableB(id, user_email)tableC(user_id, timestamp, transaction_number)以及tableA(timestamp, user_id)上的索引。

我不确定你能不能做得更好。