更好地编写内部联接的方法?

时间:2015-02-25 16:00:16

标签: sql join inner-join

我应该使用哪种方法?

Select * from table1,table2 where table1.id=table2.id;

Select * from table1 inner join table2 on table1.id=table2.id;

注意: 我是foriegn Key。

2 个答案:

答案 0 :(得分:7)

在大多数现代RDBMS中,两者都会产生相同的执行计划 第二个是推荐表单,因为它在您声明join

之后立即明确join条件是什么

答案 1 :(得分:0)

如果你的查询变得很大,那么第二种样式通常被认为更容易阅读和理解,因为查询的JOIN和WHERE部分是分开的。

Select * from table1 
INNER JOIN table2 on table1.id=table2.id
INNER JOIN table3 on table1.id=table3.id
WHERE table2.something = 1

事实上,两种风格都应该具有相同的执行范围。