sql表连接的几种方式
id
|
name
|
1
|
t1
|
2
|
t2
|
4 |
t4
|
TableB
id
|
age
|
1
|
18
|
2
|
20 |
3
|
19
|
id
|
name
|
id
|
age
|
1
|
t1
|
1
|
18
|
2
|
t2
|
2
|
20
|
4
|
t4
|
NULL |
NULL
|
注释:TableA(基表)中所有的行列都显示了,第三行的条件不匹配所有TableB(外表)的值都为NULL。
id
|
name
|
id
|
age
|
1
|
t1
|
1
|
18
|
2
|
t2
|
2
|
20
|
NULL
|
NULL
|
3 |
19
|
注释:TableB(基表)中所有的行列都显示了,第三行的条件不匹配所有TableA(外表)的值都为NULL。
id
|
name
|
id
|
age
|
1
|
t1
|
1
|
18
|
2
|
t2
|
2
|
20
|
NULL | NULL | 3 |
19
|
4 | t4 |
NULL
|
NULL |
注释:TableA和TableB的所有行列都显示了,条件不匹配的行的值为NULL
id
|
name
|
id
|
age
|
1
|
t1
|
1
|
18
|
2
|
t2
|
2
|
20
|
注释:只返回条件匹配的行
概念:没有where条件的交叉连接将产生连接表所涉及的笛卡尔积。即TableA的行数*TableB的行数的结果集。(TableA 3行*TableB 3行=9行)
id
|
name
|
id
|
age
|
1
|
t1
|
1
|
18
|
2
|
t2
|
1
|
18
|
4
|
t4
|
1
|
18
|
1
|
t1
|
2
|
20
|
2
|
t2
|
2
|
20
|
4
|
t4
|
2
|
20
|
1
|
t1
|
3
|
19
|
2
|
t2
|
3
|
19
|
4
|
t4
|
3
|
19
|
注释:返回3*3=9行数据,即笛卡尔积。
ps:
sql表连接的几种方式的更多相关文章
- 多表连接的三种方式 HASH MERGE NESTED
多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP------------------------------------------------------20 ...
- 多表连接的三种方式详解 hash join、merge join、 nested loop
在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式.多表之间的连接有三种方式:Nested Loops,Hash Join 和 Sort Merge Join.具体适用哪 ...
- 多表连接的三种方式详解 HASH JOIN MERGE JOIN NESTED LOOP
在多表联合查询的时候,如果我们查看它的执行计划,就会发现里面有多表之间的连接方式. 之前打算在sqlplus中用执行计划的,但是格式看起来有点乱,就用Toad 做了3个截图. 从3张图里我们看到了几点 ...
- sql 表连接的3种类型
内连接 inner join (join) 交叉连接 cross join 笛卡尔积 效率低 外连接 outer join (left join ,right join ,full join ...
- sql表连接方式
表连接有几种? sql表连接分成外连接.内连接和交叉连接. 一.外连接 概述: 外连接包括三种,分别是左外连接.右外连接.全外连接. 对应的sql关键字:LEFT/RIGHT/FULL OUTER ...
- php开发面试题---数据库SQL调优的几种方式
php开发面试题---数据库SQL调优的几种方式 一.总结 一句话总结: 创建索引:尽量避免使用or或者like,或者sql中的正则 存储查询中间结果 可以加sphinx搜索技术 查询优化 主从数据库 ...
- SQL表连接查询(inner join、full join、left join、right join)
SQL表连接查询(inner join.full join.left join.right join) 前提条件:假设有两个表,一个是学生表,一个是学生成绩表. 表的数据有: 一.内连接-inner ...
- SQL表连接查询
SQL表连接查询(inner join.full join.left join.right join) 表的数据有: 一.内连接-inner jion : 最常见的连接查询可能是这样,查出学生的名字和 ...
- Python与数据库[2] -> 关系对象映射/ORM[2] -> 建立声明层表对象的两种方式
建立声明层表对象的两种方式 在对表对象进行建立的时候,通常有两种方式可以完成,以下是两种方式的建立过程对比 首先导入需要的模块,获取一个声明层 from sqlalchemy.sql.schema i ...
随机推荐
- 第五章 Spring3.0 、Hibernate3.3与Struts2的整合
5.1整合Spring与Hibernate 5.1.1使用MyEclipse加入Spring与Hibernate功能 使用MyEclipse工具主要是为了让工程拥有把数据表生成实体类与映射的功能.然后 ...
- 2016 Multi-University Training Contest 3 总结
又是多校总结时间. 这两天重感冒,精神不佳,总结一拖再拖,结果到了多校第四场结束后回来总结第三场.不过因为还在补第三场的题,所以还是记得挺清楚的 欣君说决定自己AFK试试,于是全程读题算公式. 欣君翻 ...
- C函数数组元素初始化
初始化时,可随意指定初始化的元素或者元素的范围. 附gnu c 手册. http://www.gnu.org/software/gnu-c-manual/gnu-c-manual.html 代码: t ...
- openStack images概念及维护
更改以创建镜像的属性 glance image-update img-uuid --property architecture=arm --propertyhypervisor_type=qemu C ...
- linux系统配置Apache虚拟主机实例
安装apache,php: yum install httpd php 假设VPS的IP是58.130.17.168,有两个域名指向该IP,分别是domain1.com, domain2.com, 修 ...
- WKWebView与sessionID的因果
问题描述:在webView中点击下载按钮后,下载成功文件,然后再去点击上传文件,这时候服务器会报用户未登录错误. 暂时分析的原因是WKWebView在下载后cookie会保存服务器产生的session ...
- phpExcel在封装
<?php /** * 数组生成Excel * @author zouhao zouhao619@gmail.com * 使用示例 * $excel =new Excel(); $data=ar ...
- 如何在其他类中实现继承自CFormView类的对象
今天项目开发中,我们创建了一个对话框资源,并创建了一个派生自CFormView的类(假设为CMyClassDlg)来管理它. CMyClassDlg.h #pragma once // CMyClas ...
- ContentType 属性 MIME
".asf" = "video/x-ms-asf" ".avi" = "video/avi" ".doc&qu ...
- C++中常用特殊符号简介(& , * , : , :: , ->)
1."&"一般表示:引用,按位与,取地址. 如: class Complex { public: Complex operator+(Complex &c2) .. ...