MySql:从2个(或更多)表中选择时,“WHERE”条件的顺序是否重要?

时间:2015-03-01 19:37:08

标签: mysql

我有2张桌子: “用户”:( id,name,...) “游戏”:(id,player1id,player2id,date,...)

我想列出特定玩家的X最后一场比赛,我这样做:

SELECT u.name as p1, u2.name as p2, g.timestamp as time
FROM games g, users u, users u2
WHERE (g.player1id = xyz OR g.player2id = xyz) and u.id = g.player1id and u2.id = g.player2id ORDER BY ...

现在我想知道,重要的是我放置那些WHERE条件的顺序是什么?那些表是几千个被委托的,查询似乎需要一段时间,所以我觉得有些错误,这实际上是正确的方法吗?

1 个答案:

答案 0 :(得分:0)

WHERE条件的顺序并不重要 如果您想优化该查询,请尝试EXPLAIN

您很可能在WHERE

中使用的字段上没有索引