zoukankan      html  css  js  c++  java
  • 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的一些简单知识整理,希望对你有一点帮助!

  • 相关阅读:
    APP设计资源
    browsersync实现网页实时刷新(修改LESS,JS,HTML时)
    Browsersync + Gulp.js
    用原生js对表格排序
    js深复制
    c++刷题(43/100)矩阵旋转打印
    将本地的mongodb迁移到阿里云
    c++刷题(39/100)笔试题3
    c++刷题(37/100)笔试题2
    c++刷题(33/100)笔试题1
  • 原文地址:https://www.cnblogs.com/wywnet/p/4106784.html
Copyright © 2011-2022 走看看