Oracle连接说明-及另外表示方法-括号加号(+)
来源:互联网 发布:淘宝首页文字字体 编辑:程序博客网 时间:2024/05/17 05:56
Oracle中可以使用“(+) ”来表示,9i可以使用LEFT/RIGHT/FULL OUTER JOIN
LEFT OUTER JOIN:左外关联
SELECT e.last_name, e.department_id, d.department_name
FROM employees e
LEFT OUTER JOIN departments d
ON (e.department_id = d.department_id);
等价于
SELECT e.last_name, e.department_id, d.department_name
FROM employees e, departments d
WHERE e.department_id=d.department_id(+)
结果为:所有员工及对应部门的记录,包括没有对应部门编号department_id的员工记录。
RIGHT OUTER JOIN:右外关联
SELECT e.last_name, e.department_id, d.department_name
FROM employees e
RIGHT OUTER JOIN departments d
ON (e.department_id = d.department_id);
等价于
SELECT e.last_name, e.department_id, d.department_name
FROM employees e, departments d
WHERE e.department_id(+)=d.department_id
结果为:所有员工及对应部门的记录,包括没有任何员工的部门记录。
FULL OUTER JOIN:全外关联
SELECT e.last_name, e.department_id, d.department_name
FROM employees e
FULL OUTER JOIN departments d
ON (e.department_id = d.department_id);
结果为:所有员工及对应部门的记录,包括没有对应部门编号department_id的员工记录和没有任何员工的部门记录。
================================================================================================
数据表的连接有:
1、内连接(自然连接): 只有两个表相匹配的行才能在结果集中出现
2、外连接: 包括
(1)左外连接(左边的表不加限制)
(2)右外连接(右边的表不加限制)
(3)全外连接(左右两表都不加限制)
3、自连接(连接发生在一张基表内)
select a.studentno, a.studentname, b.classname
STUDENTNO STUDENTNAM CLASSNAME
---------- ---------- ------------------------------
以上语句是右连接:
即"(+)"所在位置的另一侧为连接的方向,右连接说明等号右侧的所有
记录均会被显示,无论其在左侧是否得到匹配。也就是说上例中,无
论会不会出现某个班级没有一个学生的情况,这个班级的名字都会在
查询结构中出现。
反之:
select a.studentno, a.studentname, b.classname
STUDENTNO STUDENTNAM CLASSNAME
---------- ---------- ------------------------------
则是左连接,无论这个学生有没有一个能在一个班级中得到匹配的部门号,
这个学生的记录都会被显示。
select a.studentno, a.studentname, b.classname
这个则是通常用到的内连接,显示两表都符合条件的记录
总之,
左连接显示左边全部的和右边与左边相同的
右连接显示右边全部的和左边与右边相同的
内连接是只显示满足条件的!
- Oracle连接说明-及另外表示方法-括号加号(+)
- oracle左右连接的另外表示方法-括号加号
- oracle左右连接的另一种显示方法—括号加号
- SQL连接,Oracle关联加号(+)
- iOS 代理方法声明的两种形式:加号,减号,及使用场景说明
- ORACLE 数据库 表连接 使用加号(+)
- Oracle中连接与加号的使用
- SQL连接,Oracle关联加号(+)等相关知识
- SQL连接,Oracle关联加号(+)等相关知识
- SQL连接,Oracle关联加号(+)等相关知识
- ORACLE 表连接 说明
- Java JDBC Thin Driver 连接 Oracle 三种方法说明
- Java JDBC Thin Driver 连接 Oracle 三种方法说明
- 字符连接符加号
- Oracle关联加号(+)
- 具体说明海明码的表示方法
- 经纬度表示方法及精度
- JDBC连接Oracle数据库说明(
- ASP加ACCESS数据的基本知识
- 与矩阵相关的C++,Java库
- ASP加ACCESS数据的基本知识
- Python的时间:秒和字符串之间的转换
- Android进阶篇-流量统计
- Oracle连接说明-及另外表示方法-括号加号(+)
- ASP加ACCESS数据的基本知识
- Open Atrium : 基于Drupal的团队协作解决方案
- 配置SSO时,提示没有进行操作的权利
- ASP加ACCESS数据的基本知识
- oracle的内存管理区之PGA
- android学习之resources资源
- JSP中读取ini配置文件
- 归并排序求逆序数