猿问

SQL Server中左连接和右连接之间的区别

SQL Server中左连接和右连接之间的区别

我知道SQL Server中的连接。


例如。Table1,Table2有两个表。


他们的桌子结构如下。


create table Table1 (id int, Name varchar (10))


create table Table2 (id int, Name varchar (10))

表1数据如下:


    Id     Name     

    -------------

    1      A        

    2      B    

表2数据如下:


    Id     Name     

    -------------

    1      A        

    2      B 

    3      C

如果我执行下面提到的两个SQL语句,则两个输出都是相同的


select *

from Table1

  left join Table2 on Table1.id = Table2.id


select *

from Table2

  right join Table1 on Table1.id = Table2.id

请解释上述SQL语句中左右连接的区别。


慕少森
浏览 1118回答 3
3回答

牧羊人nacy

Select * from Table1 left join Table2 ...和Select * from Table2 right join Table1 ...确实是完全可以互换的。然而,尝试Table2 left join Table1(或其相同的一对Table1 right join Table2)看到差异。此查询应该为您提供更多行,因为Table2包含一个id为Table1中不存在的行。
随时随地看视频慕课网APP
我要回答