编写内部连接的更好方法?
Better Approach of writing Inner Join?
我应该使用哪种方法?
这个
Select * from table1,table2 where table1.id=table2.id;
或
Select * from table1 inner join table2 on table1.id=table2.id;
注意: Id 是外键。
在大多数现代 RMDBS 中,两者都会产生相同的执行计划,但
第二个是推荐的形式,因为它在你声明说 join
之后就清楚地说明了 join
条件是什么
如果您的查询变得像他们一样大,则第二种样式通常被认为更易于阅读和理解,因为查询的 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
事实上,这两种样式在引擎盖下应该有相同的执行盘。
我应该使用哪种方法?
这个
Select * from table1,table2 where table1.id=table2.id;
或
Select * from table1 inner join table2 on table1.id=table2.id;
注意: Id 是外键。
在大多数现代 RMDBS 中,两者都会产生相同的执行计划,但
第二个是推荐的形式,因为它在你声明说 join
join
条件是什么
如果您的查询变得像他们一样大,则第二种样式通常被认为更易于阅读和理解,因为查询的 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
事实上,这两种样式在引擎盖下应该有相同的执行盘。