sql server 本机编译存储过程(内存优化表) 绕过不支持FULL OUTER JOIN 的限制的方法
将FULL OUTER JOIN 转成left join,right join 和 union
select * from A
ID NAME
4 Spaghetti
1 Pirate
2 Monkey
3 Ninja
select * from B
ID NAME
3 Darth Vade
1 Rutabaga
2 Pirate
4 Ninja
SELECT dbo.A.id, dbo.A.name, dbo.B.id, dbo.B.name FROM dbo.A FULL OUTER JOIN dbo.B ON dbo.A.name = dbo.B.name
select dbo.A.id, dbo.A.name, dbo.B.id, dbo.B.name from dbo.A LEFT OUTER JOIN dbo.B ON dbo.A.name = dbo.B.name
union
select dbo.A.id, dbo.A.name, dbo.B.id, dbo.B.name from dbo.A right OUTER JOIN dbo.B ON dbo.A.name = dbo.B.name
select dbo.A.id, dbo.A.name, dbo.B.id, dbo.B.name from dbo.A LEFT OUTER JOIN dbo.B ON dbo.A.name = dbo.B.name
union all
select dbo.A.id, dbo.A.name, dbo.B.id, dbo.B.name from dbo.A right OUTER JOIN dbo.B ON dbo.A.name = dbo.B.name WHERE dbo.A.id IS null
这三个查询结果都是一样的
id1 | name1 | id2 | name2 |
1 | Pirate | 2 | Pirate |
2 | Monkey | NULL | NULL |
3 | Ninja | 4 | Ninja |
4 | Spaghetti | NULL | NULL |
NULL | NULL | 1 | Rutabaga |
NULL | NULL | 3 | Darth Vade |
sql join的区别参考 https://www.cnblogs.com/logon/p/3748020.html
最新文章
- angular $http 与form表单的select
- Sql与MySQL简单入门
- JavaScript----遇到的问题
- C#屏幕截图
- Tcpdump使用常用9实例
- android中xmlns:tools属性详解
- JSON详解(转)
- Nginx Location 语法,与简单配置[转]
- IOS:被误解的MVC和被神化的MVVM
- display: inline-block 的神奇效果
- Android项目实战手机安全卫士(02)
- hdu2818行列匹配+排序
- 记一次gitlab添加账号收不到邮件的解决办法
- 【原】Java学习笔记031 - 常用类
- FPGA加三移位算法:硬件逻辑实现二进制转BCD码
- caffe安装教程(Ubuntu14+GPU+pycaffe+anaconda2)
- yum 安装mongodb mysql
- hdu 4253(经典题目:二分+最小生成树)
- Rsync 软件的工作方式
- Asakura的魔法世界
热门文章
- Windows&;Appium&;Python自动化测试-环境搭建之安卓SDK
- 【转】高可用Redis(六):瑞士军刀之bitmap,HyperLoglog和GEO
- poj2942 Knights of the Round Table[点双+二分图染色]
- PHP配置文件(php.ini)详解
- Vmware虚拟机 centos7设置固定IP地址
- Codeforces Round #454 Div. 1 [ 906A A. Shockers ] [ 906B B. Seating of Students ] [ 906C C. Party ]
- 如何复制word的图文到ueditor中自动上传?
- 路由器配置——路由重分布1(rip)
- 【luoguP2158】 [SDOI2008]仪仗队
- 初次使用自己写的testbench 验证了简单的NOT门。