SQL SERVER连接表

连接表的作用是将那些具有完整逻辑的表相互连接起来获得具有完整意义的数据库,从而进行多表查询。连接表有很多种,主要包括内连接、左连接、右连接、全外连接和交叉连接。

内连接:关键词:inner

内连接是使用最多的连接之一,用于查询两个或多个相关表的数据,基本语法如:

 

其中T1为主表,inner join将T1与T2中的每一行相比较,以查找满足连接谓词的所有行,如果连接谓词结果为true,则T1和T2的列值合并成一个新行包括在结果集中,如图:

 

左连接:关键词:left

左连接也是常用的表,它的主要是将左表中的所有行与右表相匹配,如果在右表中找不到匹配的行将会用null表示,其表达式如下:

 

T1为左表,T2为右表,举个例子将学生表与成绩表左连接,结果集如下:

 

可以看到未匹配的值将会用null表示

右连接:关键词:right

和左连接意思差不多,只不过是将右表中的所有行与左表相匹配

 

交叉连接:关键词:cross

交叉连接将第一个表和第二个表中的每一个行都连接起来,假设第一个表有m行,第二个表有n行,那么连接之后就有m×n行,公式如下:

 

注意交叉连接是连接两个或多个不相关的表

自连接:将表连接到自身,可以使用内连接或左连接,由于自连接的查询引用同一个表,所以表名用于查询中的表分配不同的名称

 

全外连接:关键词:full outer

当左表或右表中存在匹配项时,将命令返回所有行

以上便是我对SQL SERVER连接表的部分看解,如果有疑问的请在评论区留言。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值