T-SQL备忘(1):表联接
测试用例表如下:
1.取2个成员表中的交集(A∩B)
T-SQL:
select Member1.Name,Member1.Age from Member1 join Member2 on Member1.Name=Member2.Name
select * from Member1
intersect
select * from Member2
2.取2个成员表中的并集(A∪B)
T-SQL:
select * from Member1
union
select * from Member2
3.取在A中不在B中(A-B)
T-SQL:
select * from Member1 left join Member2 on Member1.Name=Member2.Name
where Member2.Name is null
---或者使用full join
select * from Member1 full join Member2 on Member1.Name=Member2.Name
where Member2.Name is null
4.取在B中不在A中(B-A)
T-SQL:
select * from Member1 right join Member2 on Member1.Name=Member2.Name
where Member1.Name is null
---或者使用full join
select * from Member1 full join Member2 on Member1.Name=Member2.Name
where Member1.Name is null
5.full join = 1+3+4
T-SQL:
select * from Member1 full join Member2 on Member1.Name=Member2.Name
6.except =3 or 4
T-SQL:
select * from Member1
except
select * from Member2
7.union all(合并包含重复项) =2+1
T-SQL:
select * from Member1
union all
select * from Member2
8.交叉连接 =表A*表B
T-SQL:
select * from Member1 cross join Member2
---等同于
select * from Member1,Member2
select * from Member1 join Member2 on 1=1
一幅简图更好地理解表联接:
T-SQL备忘(1):表联接的更多相关文章
- 一些性能查询的SQL 备忘
--检查数据库的等待事件 from v$session_waitwhere event not like 'SQL%' and event not like 'rdbms%' --找出系统中耗时的操作 ...
- DB&SQL备忘
DB2最佳分页语句 SELECT * FROM ( SELECT inner2_.*, ROWNUMBER() OVER(ORDER BY ORDER OF inner2_) AS rownumber ...
- sql 备忘
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; select dbms_metadata.get_ddl('TABLE','TAB ...
- Sql 备忘——行号
SELECT row_number() over(order by Product.ID) as [row_number]
- [备忘]js表单序列化代码
function serialize(form) { var parts = [], elems = form.elements, i = 0, len = elems.length, filed = ...
- 2019-07-06 sql备忘 连续取最大
连续最大: SELECT M.* FROM #temp MINNER JOIN (SELECT ISNULL(A.score,0)-b.score AS score,B.id FROM #temp A ...
- Mysql又一次整理笔记--woods备忘
==============================SQL备忘 CRUD 查询 多表 事件等=============================== ------------------ ...
- 关于SQL表联接
以SQL2008为例,Microsoft SQL Server 2008支持四种表运算符-JOIN,APPLY,PIVOT,UNPIVOT.JOIN表运算符是ANSI标准,而其他三种是T-SQL对标准 ...
- SQL Server修改标识列方法(备忘)
原文:SQL Server修改标识列方法(备忘) SQL Server修改标识列方法 ----允许对系统表进行更新 exec sp_configure 'allow updates',1 reconf ...
随机推荐
- 【转载】CCombobox使用大全
一.如何添加/删除Combo Box内容 1. 在Combo Box控件属性的Data标签里面添加,一行表示Combo Box下拉列表中的一行.换行用ctrl+回车. 2. 在程序初始化时动态添加 如 ...
- FolderBrowserDialog 成员
http://msdn.microsoft.com/zh-cn/library/system.windows.forms.folderbrowserdialog_members(v=vs.80).as ...
- C# textbox 滚动条 随文本输入 滚动
tb_Log.SelectionStart = tb_Log.Text.Length;//设置光标位置 tb_Log.ScrollToCaret();//随文本输入 滚动
- Machine Learning Done Wrong
Machine Learning Done Wrong Statistical modeling is a lot like engineering. In engineering, there ar ...
- Unity3D 集合插件目录
http://unity3d.9ria.com/?p=2171 这个基本上很全 下面自己觉的还不错的,当然那些大众的就不列出来了 一.KGFMapSystem Quick Start : http:/ ...
- XEE介绍
摘要: XMl Entity Expansion(攻击)某种程度上类似于 XML Entity Expansion,但是它主要试图通过消耗目标程序的服务器环境来进行DOS攻击的.这种攻击基于XML E ...
- HDU 1102 Constructing Roads(最小生成树,基础题)
注意标号要减一才为下标,还有已建设的路长可置为0 题目 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include<str ...
- grunt下cssmin的配置参数
每个目标的具体设置,需要参考该模板的文档minify目标的参数具体含义如下: expand:如果设为true,就表示下面文件名的占位符(即*号)都要扩展成具体的文件名. cwd:需要处理的文件(inp ...
- java生成二维码的三个工具
1. 使用SwetakeQRCode在Java项目中生成二维码 http://swetake.com/qr/ 下载地址 或着http://sourceforge.jp/projects/qrcode ...
- apache common-io.jar FileUtils
//复制文件 void copyFile(File srcFile, File destFile) //将文件内容转化为字符串 String readFileToString(File file ...