Sql 连接顺序是否影响性能
这两个连接结果集是相同的,我们得到匹配和不匹配的员工Sql 连接顺序是否影响性能,sql,Sql,这两个连接结果集是相同的,我们得到匹配和不匹配的员工 create table Employee( id int identity(1,1) primary key, Username varchar(50), FirstName varchar(50), LastName varchar(50), DepartID int ) create table Departments( id int identity(1,1) primary key, DepartmentName varch
create table Employee(
id int identity(1,1) primary key,
Username varchar(50),
FirstName varchar(50),
LastName varchar(50),
DepartID int
)
create table Departments(
id int identity(1,1) primary key,
DepartmentName varchar(50)
)
您的两个查询确实完全可以互换。在表现和结果上应该没有区别
大多数人只使用
LEFT-JOIN
,因为它看起来更直观,而且是通用语法-我不认为所有的RDBMS都支持RIGHT-JOIN
。并非所有RDBMS都支持SQL。例如,SQLite 3没有实现RIGHT
和FULL-OUTER-JOIN
,因为a LEFT b
与b RIGHT a
相同,应该没有区别。使用了标记dbms。性能问题几乎总是针对产品的!
Select * from Employee E
Left Join
Departments D
ON D.ID= E.DepartID
Select * from Departments D
Right Join Employee E
ON E.DepartID =D.ID