码迷,mamicode.com
首页 > 其他好文 > 详细

连表查询总结20140903

时间:2015-09-20 06:51:47      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:

结论:

1、 左连表查询:循环匹配的数据加入到结果,然后将左表没有匹配的数据加入到结果

2、 右连表查询:循环匹配的数据加入到结果,然后将右表没有匹配的数据加入到结果

3、 完全连表查询:循环匹配的数据加入到结果,然后将两个表没有匹配的数据加入到结果

1、 准备工作,两张表idtable 和 nametable,如图

idtable 表: nametable表:

技术分享 技术分享

2、左连表查询,使用的是“left”,将“join”右边的表的连表条件的值循环和左表中匹配,匹配一次,则加入查询结果记录中,这个示范是,将nametable中value的四个值“1,1,2,6”,分别到idtable中去比对,结果记录了3条结果,然后将左表中剩余没有被匹配过的数据也加入到结果中,对应的右表字段为null;

select a.*,b.* from dbo.idtable a left join dbo.nametable b on a.value=b.value

技术分享

3、右连表查询,和左连表查询类似,只是这次是用左表的数据去匹配右表,然后将右表中剩余没有匹配的加入到结果中,对应的左表字段为null;

select a.*,b.* from dbo.idtable a right join dbo.nametable b on a.value=b.value

技术分享

4、完全连表查询,则是匹配完后,将两个表中剩余的没有匹配的都加入到结果中

select a.*,b.* from dbo.idtable a full join dbo.nametable b on a.value=b.value

技术分享

连表查询总结20140903

标签:

原文地址:http://www.cnblogs.com/heiyexiaoguai/p/4822763.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!