2013-06-20 66 views
1

考虑这个查询加入条件的顺序很重要?

SELECT users.id, 
     users.name 
FROM users 
     LEFT JOIN suppliers 
       ON users.id = suppliers.id 
       AND users.hall = suppliers.hall 
WHERE USER.payment > 300 

在此会有怎样的顺序在物质加入(即ID第二和第一堂)项的条件的变化?

+0

这里有什么问题? –

+0

ON子句完全没有影响。哪些是左连接到哪个会产生戏剧性的差异 – Kickstart

回答

1

连接条件的顺序对结果没有影响,因为它们表示一个整体分析的布尔表达式。

+4

但它*可能会影响查询计划(=>性能) –

+1

这是真的。您应该考虑按照它们在索引中的顺序使用它们。如果不是所有字段都在索引中,则应首先使用索引的字段。 –

+0

这两个表的索引都是在大厅的顺序中,所以用这种方式改变它:)。谢谢@RomanoZumbé – PiKaY