首页 > 代码库 > SQL Join简单介绍
SQL Join简单介绍
前沿
Join是关系型数据库系统的重要操作之一,SQL Server中包含的常用Join:内联接、外联接和交叉联接等。
如果我们想在两个或以上的表获取其中从一个表中的行与另一个表中的行匹配的数据,这时我们应该考虑使用Join,因为Join具体联接表或函数进行查询的特性
创建表结构
create table Ta_A(id int,name nvarchar(50));create table Ta_B(id int,name nvarchar(50));insert into Ta_A VALUES (1,‘Pirate‘)insert into Ta_A VALUES (2,‘Monkey‘)insert into Ta_A VALUES (3,‘Ninja‘)insert into Ta_A VALUES (4,‘Spaghe‘)insert into Ta_B VALUES (1,‘Nuta‘)insert into Ta_B VALUES (2,‘Pirate‘)insert into Ta_B VALUES (3,‘Darth‘)insert into Ta_B VALUES (4,‘Ninja‘)
内联接(Inner Join)
select * from Ta_A inner join Ta_B on Ta_A.name=Ta_B.name
全外联接(Full Outer Join)
SELECT * FROM Ta_A FULL OUTER JOIN Ta_B ON Ta_A.name=Ta_B.name
左外部联接(Left Outer Join)
SELECT * FROM Ta_A LEFT OUTER JOIN Ta_B ON Ta_A.name=Ta_B.name
再看一下如何取出A表记录而不存在B表中,对应还是左外联接
SELECT * FROM Ta_A LEFT OUTER JOIN Ta_B ON Ta_A.name = Ta_B.name WHERE Ta_B.id IS null
再看另一种情况,也是用全外联接,取出A、B交集以外的数据
SELECT * FROM Ta_A FULL OUTER JOIN Ta_B ON Ta_A.name=Ta_B.name WHERE Ta_A.id IS NULL OR Ta_B.id IS NULL
结束
以上就是关于SQL Join的一些简单知识整理,希望对你有一点帮助!
SQL Join简单介绍
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。