数据准备:

create table T1(
A varchar(10) not null,
B varchar(10) not null,
C tinyint not null
); create table T2(
B varchar(10) not null,
E tinyint not null
); insert into T1
values
('a1', 'b1', 5),
('a1', 'b2', 6),
('a2', 'b3', 8),
('a2', 'b4', 12); insert into T2
values
('b1', 3),
('b2', 7),
('b3', 10),
('b3', 2),
('b5', 2); select * from T1;
select * from T2;

结果:

 A          B          C
---------- ---------- ----
a1 b1 5
a1 b2 6
a2 b3 8
a2 b4 12 (4 行受影响) B E
---------- ----
b1 3
b2 7
b3 10
b3 2
b5 2 (5 行受影响)

1、内连接

 select * from T1 inner join T2 on T1.B = T2.B

 A          B          C    B          E
---------- ---------- ---- ---------- ----
a1 b1 5 b1 3
a1 b2 6 b2 7
a2 b3 8 b3 10
a2 b3 8 b3 2

2、左外连接

 select * from T1 left outer join T2 on T1.B = T2.B

 A          B          C    B          E
---------- ---------- ---- ---------- ----
a1 b1 5 b1 3
a1 b2 6 b2 7
a2 b3 8 b3 10
a2 b3 8 b3 2
a2 b4 12 NULL NULL

3、右外连接

 select * from T1 right outer join T2 on T1.B = T2.B

 A          B          C      B          E
---------- ---------- ---- ---------- ----
a1 b1 5 b1 3
a1 b2 6 b2 7
a2 b3 8 b3 10
a2 b3 8 b3 2
NULL NULL NULL b5 2

4、完全连接

 select * from T1 full outer join T2 on T1.B = T2.B

 A            B            C       B          E
---------- ---------- ---- ---------- ----
a1 b1 5 b1 3
a1 b2 6 b2 7
a2 b3 8 b3 10
a2 b3 8 b3 2
a2 b4 12 NULL NULL
NULL NULL NULL b5 2

5、交叉连接(笛卡尔乘积)

 select * from T1 cross join T2

 A          B          C    B          E
---------- ---------- ---- ---------- ----
a1 b1 5 b1 3
a1 b1 5 b2 7
a1 b1 5 b3 10
a1 b1 5 b3 2
a1 b1 5 b5 2
a1 b2 6 b1 3
a1 b2 6 b2 7
a1 b2 6 b3 10
a1 b2 6 b3 2
a1 b2 6 b5 2
a2 b3 8 b1 3
a2 b3 8 b2 7
a2 b3 8 b3 10
a2 b3 8 b3 2
a2 b3 8 b5 2
a2 b4 12 b1 3
a2 b4 12 b2 7
a2 b4 12 b3 10
a2 b4 12 b3 2
a2 b4 12 b5 2

SQL Server内连接、左外连接、右外连接、完全连接、交叉lianjie的更多相关文章

  1. 深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接(转)

    1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接.     内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 stude ...

  2. 【转】深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接

    [原文]:http://www.jb51.net/article/39432.htm 1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接.    ...

  3. 深入理解SQL的四种连接,左外连接,右外连接,内连接,全连接

    1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接.     内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 stude ...

  4. 转【深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接】

    转自:https://www.jb51.net/article/39432.htm 1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接.     ...

  5. 此版本的 SQL Server 不支持用户实例登录标志。该连接将关闭“的解决

    此版本的 SQL Server 不支持用户实例登录标志.该连接将关闭“的解决(转) 2008-10-04 13:31 错误提示:说明: 执行当前 Web 请求期间,出现未处理的异常.请检查堆栈跟踪信息 ...

  6. SQL Server 内置函数、临时对象、流程控制

    SQL Server 内置函数 日期时间函数 --返回当前系统日期时间 select getdate() as [datetime],sysdatetime() as [datetime2] getd ...

  7. 10、SQL Server 内置函数、临时对象、流程控制

    SQL Server 内置函数 日期时间函数 --返回当前系统日期时间 select getdate() as [datetime],sysdatetime() as [datetime2] getd ...

  8. SQL Server内置的HTAP技术

    SQL Server内置的HTAP技术 目录 背景 SQL Server在OLAP上的发展 SQL Server的初代HTAP SQL Server逐渐增强的HTAP SQL Server列存总结 H ...

  9. sql server 内置ETL工具学习(一) BCP篇

    sql server 内置ETL工具学习 常用的导入方式:bcp, BULK INSERT,OPENROWSET和 SSIS. BCP BCP全称BULK COPY PROGRAM 有以下特点: 命令 ...

  10. sql server内置存储过程、查看系统信息

    1.检索关键字:sql server内置存储过程,sql server查看系统信息 2.查看磁盘空间:EXEC master.dbo.xp_fixeddrives , --查看各个数据库所在磁盘情况S ...

随机推荐

  1. SQL if语句简要

    if语句 可以作为表达式用 可以在存储过程中作为流程控制语句用 表达式 IF(条件,条件true,条件false) 示例 sex字段m,f 互换 update salary set sex = if( ...

  2. JSON解析的成长史——原来还可以这么简单

    本文系统介绍,JSON解析的成长史,未经允许,禁止转载. JSON是一种轻量级的数据格式,一般用于数据交互 Android交互数据主要有两种方式:Json和Xml,Xml格式的数据量要比Json格式略 ...

  3. Oracle dbms_random包的用法

    1.dbms_random.value方法 dbms_random是一个可以生成随机数值或者字符串的程序包.这个包有initialize().seed().terminate().value().no ...

  4. 06多次查询某区间内topk问题

            题目描述:给定一个数组,需要多次查找不同区间内的,第k大或者第k小的元素.         考虑题目是多次查找,如果采用只对查询区间内的元素进行排序的思路,然后输出第k大的数的策略,那 ...

  5. hdu 2473 Junk-Mail Filter (暴力并查集)

    Problem - 2473 为什么标题写的是暴力并查集?因为我的解法跟网上的有所不同,方法暴力很多. 先解释题意,这是一个模拟处理垃圾邮件的问题.垃圾邮件要根据它们的性质进行分类.对于10w个邮件, ...

  6. 唯一索引与非唯一索引区别(UNIQUE INDEX, NON-UNIQUE INDEX)

    索引是我们经常使用的一种数据库搜索优化手段.适当的业务操作场景使用适当的索引方案可以显著的提升系统整体性能和用户体验.在Oracle中,索引有包括很多类型.不同类型的索引适应不同的系统环境和访问场景. ...

  7. js将单个反斜杠转化为斜杠的问题

    var two="https://192.255.255.255:3215/2019/2/26/16/13/b2e8929483c66cefddbe1e49a007e3f8-47358FC3 ...

  8. Vue 父组件与子组件的传值

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. P1111 朋友关系判定

    题目描述 有n个人和m对关系,这n个人的编号从1到n. 而m对关系中,每对关系都包含两个人的编号A和B(1<=A,B<=n),用于表示A和B是好友关系. 如果两个数A和B不在好友关系中,则 ...

  10. 降智严重——nowcoder练习赛46&&codeforces #561 Div2

    两场比赛降智不停,熬夜爆肝更掉rating nowcoder: https://ac.nowcoder.com/acm/contest/894#question T1:水题 T2:考虑a和b的子区间! ...