SQLServer 连接和联合
一、内连接(inner join)
默认省略inner ,内连接是严格过滤,等同where限制,连接两端的表都数据都需要过滤。
二、左外连接(left outer join)
以左表为基准进行数据连接,右侧数据如果不存在则使用null替代。 使用时习惯不带outer
三、右连接(right join)
以右表为基准进行数据连接,左侧数据如果不存在则使用null替代。 使用时习惯不带outer
四、交叉连接(cross join)
以左侧表边为基础与右侧表进行计算求笛卡尔积。
五、联合(union)
联合查询将多个结果合并之后返回,
1、列名以第一个结果为标准,后续结果集列名不会使用。
2、列数量必须相等。
3、查询默认是discint,重复的记录将不会多次返回。可以使用all 返回所有记录。
推荐看Alan_beijing博客比较详细明了:
【SqlServer系列】表连接