sqlserver数据库供给了右联系关系RIGHT JOIN的联系关系体例。这个联系关系是以右边的表为根本,左边能联系关系上的就呈现成果,联系关系不上的就呈现null。同时,right join和right outer join在sqlserver中是一回事,结果是一样的
建立一个姑且表,用于演示sqlserver语法中的右联系关系RIGHT JOIN利用
IF OBJECT_ID('tempdb..#tbl1') IS NOT NULL DROP TABLE #tbl1;
CREATE TABLE #tbl1(
Col1 varchar(50),
Col2 varchar(200)
);
建立别的一个姑且表,用于演示sqlserver语法中的右联系关系RIGHT JOIN利用
IF OBJECT_ID('tempdb..#tbl2') IS NOT NULL DROP TABLE #tbl2;
CREATE TABLE #tbl2(
Col1 varchar(50),
Col3 varchar(200)
);
往姑且表中插入几行测试数据,此中包罗插入Null值数据
insert into #tbl1(Col1, Col2) values('Code1', '第1列');
insert into #tbl1(Col1, Col2) values('Code10', '第2列');
insert into #tbl1(Col1, Col2) values('Code100', '第3列');
insert into #tbl2(Col1, Col3) values('Code1', NULL);
insert into #tbl2(Col1, Col3) values('Code10', '教员');
insert into #tbl2(Col1, Col3) values('Code99', '学生');
查询姑且表中的测试数据
select * from #tbl1;
select * from #tbl2;
利用右联系关系RIGHT JOIN联系关系两张表,以第二个姑且表为准,查询成果。右联系关系的成果是,以右边的表为准,左边能联系关系上的就呈现,联系关系不上的就是null
select *
from #tbl1 a
right join #tbl2 b on b.Col1 = a.Col1
利用RIGHT OUTER JOIN联系关系两张表,以第二个姑且表为准,查询成果
select *
from #tbl1 a
right outer join #tbl2 b on b.Col1 = a.Col1
从运行成果可以看出,对于right join和right outer join两种写法在sqlserver中其实是一样的结果。右联系关系,也可以利用左联系关系来实现,只需要互换一下表的位置和关头字
select *
from #tbl2 a
left join #tbl1 b on b.Col1 = a.Col1
0 篇文章
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!