Oracle数据库中表的四种连接方式讲解
1. 相等连接
通过两个表具有相同意义的列,可以建立相等连接条件。
只有连接列上在两个表中都出现且值相等的行才会出现在查询结果中。
例 查询员工信息以及对应的员工所在的部门信息;
SELECT * FROM EMP,DEPT; SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO; |
REM 显示工资超过2000的员工信息以及对应的员工的部门名称。
2. 外连接
对于外连接,Oracle中可以使用“(+)”来表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN,下面将配合实例一一介绍。除了显示匹配相等连接条件的信息之外,还显示无法匹配相等连接条件的某个表的信息。
外连接采用(+)来识别。
A) 左条件(+) = 右条件;
代表除了显示匹配相等连接条件的信息之外,还显示右条件所在的表中无法匹配相等连接条件的信息。
此时也称为"右外连接".另一种表示方法是:
SELECT ... FROM 表1 RIGHT OUTER JOIN 表2 ON 连接条件
B) 左条件 = 右条件(+);
代表除了显示匹配相等连接条件的信息之外,还显示左条件所在的表中无法匹配相等连接条件的信息。
此时也称为"左外连接".
SELECT ... FROM 表1 LEFT OUTER JOIN 表2 ON 连接条件
例 显示员工信息以及所对应的部门信息
--无法显示没有部门的员工信息
--无法显示没有员工的部门信息
--SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO; |
--直接做相等连接:
SELECT * FROM EMP JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO;
REM 显示员工信息以及所对应的部门信息,显示没有员工的部门信息
--SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO(+) = DEPT.DEPTNO; SELECT * FROM EMP RIGHT OUTER JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO; |
REM 显示员工信息以及所对应的部门信息,显示没有部门的员工信息
--SELECT * FROM EMP,DEPT WHERE EMP.DEPTNO = DEPT.DEPTNO(+); SELECT * FROM EMP LEFT OUTER JOIN DEPT ON EMP.DEPTNO = DEPT.DEPTNO; |
3. 不等连接
两个表中的相关的两列进行不等连接,比较符号一般为>,<,...,BETWEEN.. AND..
REM SALGRADE --DESC SALGRADE; --SELECT * FROM SALGRADE; |
REM 显示员工的编号,姓名,工资,以及工资所对应的级别。
SELECT EMPNO,ENAME,SAL,SALGRADE.* FROM SALGRADE,EMP WHERE EMP.SAL BETWEEN LOSAL AND HISAL; |
REM 显示雇员的编号,姓名,工资,工资级别,所在部门的名称;
SELECT EMPNO,ENAME,SAL,GRADE,DNAME FROM EMP,DEPT,SALGRADE WHERE EMP.DEPTNO = DEPT.DEPTNO AND EMP.SAL BETWEEN LOSAL AND HISAL; |
4. 自连接
自连接是数据库中经常要用的连接方式,使用自连接可以将自身表的一个镜像当作另一个表来对待,从而能够得到一些特殊的数据。下面介绍一下自连接的方法:
将原表复制一份作为另一个表,两表做笛卡儿相等连接。
例 显示雇员的编号,名称,以及该雇员的经理名称
SELECT WORKER.ENAME,WORKER.MGR,MANAGER.EMPNO,MANAGER.ENAME FROM EMP WORKER,EMP MANAGER
WHERE WORKER.MGR = MANAGER.EMPNO;(樊斌 IT专家网)
- 1观点:存储安全究竟发生了什么?
- 2列数保护服务器的十二个热点技术
- 3企业安全讨论 如何保护好网络流量
- 4确保Windows操作系统稳定的六个秘笈
- 5专家谈企业核心机密数据的安全防范机制
- 6如何巧妙利用防火墙拒绝内网入侵
- 7注意提防统一通信带来的安全威胁
- 8合格程序员应该具备哪12种能力?
- 9五大虚拟化热门技术:CPU虚拟化居首
- 10CIO如何应对虚拟化的三种安全风险
- 11谈谈数据丢失保护中的隐性成本控制
- 12企业信息化安全之文档信息安全简谈
- 13部署企业无线网路应考虑四个风险和对策
- 14混合环境下虚拟化管理的挑战
- 15深度分析云计算
- 16如何恰当地评估和应对数据中心各种风险
- 17服务器虚拟化是实现绿色IT重要途径
- 18未来5年可能必备的IT技术
- 19数据中心 迎接巨变
- 20经验提醒:企业常见的10个节电误区
- 21OA办公系统结合了先进的管理思想和经验
- 22企业部署虚拟化前要想清楚的十大问题
- 23安全专家称安全产业落后于黑客技术
- 24OA办公系统实现企业 “仁义礼智信”
- 25虚拟化技术的6大安全问题及保障措施
- 26超量的存储采购将影响未来的存储预算
- 27重复数据删除技术的安全性如何
- 28趋势分析:虚拟化引领灾备的新方向
- 29网友:从Windows转向UNIX的一些困惑
- 30绿色数据中心都有哪些量化指标?