SQL Server [join] 整理
Aid Aname Acode
1 aa 001
2 bb 002
3 cc 003
4 dd 004
5 ee 005
Bid Bname Bcode
1 aaa 101
3 bbb 102
5 ccc 103
7 ddd 104
9 eee 105
left join:左联接
SELECT *
FROM A
LEFT JOIN B
ON A.Aid=B.Bid
Aid Aname Acode Bid Bname Bcode
1 aa 001 1 aaa 101
2 bb 002 NULL NULL NULL
3 cc 003 3 bbb 102
4 dd 004 NULL NULL NULL
5 ee 005 5 ccc 103
right join:右联接
返回包括右表中的所有记录和左表中联结字段相等的记录。
SELECT *
FROM A
Right JOIN B
ON A.Aid=B.Bid
Aid Aname Acode Bid Bname Bcode
1 aa 001 1 aaa 101
3 cc 003 3 bbb 102
5 ee 005 5 ccc 103
NULL NULL NULL 7 ddd 104
NULL NULL NULL 9 eee 105
inner join:内联接
只返回两个表中联结字段相等的行。
SELECT *
FROM A
INNER JOIN B //INNER可以不写
ON A.Aid=B.Bid
Aid Aname Acode Bid Bname Bcode
1 aa 001 1 aaa 101
3 cc 003 3 bbb 102
5 ee 005 5 ccc 103
full join:全联接
返回两个表中所有字段。
SELECT *
FROM A
FULL JOIN B
ON A.Aid=B.Bid
Aid Aname Acode Bid Bname Bcode
1 aa 001 1 aaa 101
2 bb 002 NULL NULL NULL
3 cc 003 3 bbb 102
4 dd 004 NULL NULL NULL
5 ee 005 5 ccc 103
NULL NULL NULL 7 ddd 104
NULL NULL NULL 9 eee 105
cross join:交叉联接
返回两个表的笛卡儿积。
SELECT *
FROM A
Cross JOIN B
Aid Aname Acode Bid Bname Bcode
1 1
2 1
3 1
4 (5*5条) 1
5 1
1 3
2 3
……
……
……
SELECT *
FROM A
Cross JOIN B
WHERE
A.Aid = B.Bid
Aid Aname Acode Bid Bname Bcode
1 aa 001 1 aaa 101
3 cc 003 3 bbb 102
5 ee 005 5 ccc 103
与inner join 结果一样,实际上是先返回所有结果(25条),再从中查询符合WHERE的结果。
SQL Server [join] 整理的更多相关文章
- SQL Server Join方式
原文:SQL Server Join方式 0.参考文献 Microsoft SQL Server企业级平台管理实践 看懂SqlServer查询计划 1.测试数据准备 参考:Sql Server中的表访 ...
- SQL Server通过整理索引碎片和重建索引提高速度
本文章转载:http://database.51cto.com/art/201108/282408.htm SQL Server数据库中,当索引碎片太多时,就会拖慢数据库查询的速度.这时我们可以通过整 ...
- sql server 碎片整理——DBCC SHOWCONTIG
转自: 1.http://blog.sina.com.cn/s/blog_6d2675450101ks6i.html 2.http://www.cnblogs.com/CareySon/archive ...
- SQL Server 语句整理
1. 创建数据库 create database dbName 2. 删除数据库 drop database dbName 3. 备份sql server --- 创建 备份数据的 device US ...
- 提升SQL Server速度整理索引碎片
转载:http://wenku.baidu.com/view/f64c8a707fd5360cba1adbea.html SQL Server2005索引碎片分析和解决方法 毫无疑问,给表添加索引 ...
- SQL Server书籍整理
1.<Microsoft SQL Server企业级平台管理实践>徐海蔚2.<SQL Server 2005 Performance Tuning性能调校>胡百敬3.<M ...
- sql server 知识整理 isnull函数()
exec sp_helptext ProPrecode_matcode_uf exec sp_helptext 存储过程名字 isnull 函数() SQL Serve中的isnull()函数: is ...
- sql server join联结
join学习起来有点乱,现做如下整理: table A id abc 1 a 2 b 3 c 4 d table B id abc 1 e 2 a 3 f 4 c --join或者inner join ...
- SQL Server join介绍
介绍Inner Join(可以省略Inner,平常经常inner,就是inner join), Full Out Join,Cross Join,Left Join, Right Join区别. )) ...
随机推荐
- 案例-html5新标签-input和video
<form action=""> <fieldset> <!--fieldset标签:可将表单内的元素分组 ,常与legend搭配使用--> & ...
- C#跨线程访问(二)----thread参数、回调传参数
一.单个参数(封箱也可实现多参数) class B { public static void Main() { Thread t = new Thread(ne ...
- No package docker-io available
新手centos6.8安装docker时从遇到No package docker-io available开始的各种不小心的坑... 新安装了CentOS6.8,准备安装docker,执行命令 yum ...
- docker Dockerfile学习---构建mongodb环境
1.创建项目目录并上传包 mkdir centos_mongodb cd centos_mongodb .tgz 2.编辑配置文件 vi mongodb.conf dbpath = /data/usr ...
- [转载]python异常如何全面捕获
写在前面:最近写python程序,进场遇到异常的问题,因此需要捕获异常.查阅了下资料,整理如下: 常见的异常处理的方法: 假设有下面的一段程序: try: 语句1 语句2 . ...
- python_django_在views模块中操作状态保持(session)
什么叫状态保持? 就比如说我们登陆一个网站,登陆之后的当前页面显示的是登陆状态,但是我们要再跳转同一网站的其他页面,则显示的未登录状态,状态保持就是:我们在当前页面登陆后,再访问其他页面时也显示为登陆 ...
- vue footer点击变色
<header class="tab_nav"> <div v-for="(item,index) in tabNav" @click=&qu ...
- Aira搭建
Aira下载地址 https://github.com/aria2/aria2/releases AriaNg下载地址 https://github.com/mayswind/AriaNg/relea ...
- is与==的区别
is:比较两边的内存地址是否一样 ==:比较两边的数据值是否一样 list1 = [1, 2] list2 = [1, 2] if list1 == list2: # == 是比较数据 print(' ...
- Struts2配置详情
Struts2的核心功能是action,对于开发人员来说,使用Struts2主要就是编写action,action类通常都要实现com.opensymphony.xwork2.Action接口,并实现 ...