SQLServer join表连接用法

SQLServer join表连接用法

join的作用不用多说,在查询数据时的常用方法。join通常有四种用法,在这里我们来看下每种方法所取得的数据结果的差异。

模拟数据表A,B

表A数据内容:

表B数据内容:

方法一:left join

语句:select * from A left join B on A.id=B.id

结果:A为基准表,连接B表符合条件的记录,无相符内容则留空

方法二:right join

语句:select * from A right join B on A.id=B.id

结果:B为基准表,连接A表相符的记录,无相符记录则留空。

方法三:inner join

语句:select * from A inner join B on A.id=B.id

结果:没有基准表,只取A、B两表中条件相符的记录,不相符的记录全部舍弃。

方法四:full outer join

语句:select * from A full outer join B on A.id=B.id

结果:先以A表为基准,且A、B两表数据全部取入,并按条件优先连接条件相符的B表数据,无相符的留空,B表余下无主数据放在最后。

 

总结四种方法的结果差异

A left join B

A right join B

A inner join B

A full outer join B

滚动至顶部