数据库版本:
Oracle 9i
表
TESTA,TESTB,TESTC,
各有
A, B
两列
连接分为两种:内连接与外连接。
A
.内连接
内连接,即最常见的等值连接,例:
SELECT
*
FROM
TESTA,TESTB
WHERE
TESTA.A=TESTB.A
结果
B.
外连接
外连接分为左外连接,右外连接和全外连接。
1.
左外连接
left outer join
或者
left join
左外连接就是在等值连接的基础上加上主表中的未匹配数据,例:
SELECT
*
FROM
TESTA
LEFT
OUTER
JOIN
TESTB
ON
TESTA.A=TESTB.A
Oracle
支持另一种写法
SELECT
*
FROM
TESTA,TESTB
WHERE
TESTA.A=TESTB.A(+)
结果:
A
|
B
|
A
|
B
|
001
|
10A
|
001
|
10B
|
002
|
10B
|
|
|
三个表做左外连接
SELECT
*
FROM
TESTA
LEFT
OUTER
JOIN
TESTB
ON
TESTA.A=TESTB.A
LEFT
OUTER
JOIN
TESTC
ON
TESTA.A=TESTC.A
Oracle
支持的另外一种写法
SELECT
*
FROM
TESTA,TESTB,TESTC
WHERE
TESTA.A=TESTB.A(+)
AND
TESTA.A=TESTC.A(+)
结果:
A
|
B
|
A
|
B
|
A
|
B
|
001
|
10A
|
001
|
10B
|
001
|
10C
|
002
|
20A
|
|
|
|
|
2.
右外连接
right outer join
或者
right join
右外连接是在等值连接的基础上加上被连接表的不匹配数据
SELECT
*
FROM
TESTA
RIGHT
OUTER
JOIN
TESTB
ON
TESTA.A=TESTB.A
Oracle
支持的另一种写法
SELECT
*
FROM
TESTA,TESTB
WHERE
TESTA.A(+)=TESTB.A
结果:
A
|
B
|
A
|
B
|
001
|
10A
|
001
|
10B
|
|
|
003
|
30B
|
3.
全外连接
full outer join
或者
full join
全外连接是在等值连接的基础上将左表和右表的未匹配数据都加上
SELECT
*
FROM
TESTA
FULL
OUTER
JOIN
TESTB
ON
TESTA.A=TESTB.A
全外连接的等价写法,对同一表先做左连接,然后右连接
SELECT
TESTA.*,TESTB.*
FROM
TESTA
LEFT
OUTER
JOIN
TESTB
ON
TESTA.A=TESTB.A
UNION
SELECT
TESTA.*,TESTB.*
FROM
TESTB
LEFT
OUTER
JOIN
TESTA
ON
TESTA.A=TESTB.A
结果:
A
|
B
|
A
|
B
|
001
|
10A
|
001
|
10B
|
002
|
20A
|
|
|
|
|
003
|
30B
|
分享到:
相关推荐
Oracle左连接,右连接.doc Oracle左连接,右连接.doc
oracle 左连接 右连接 学习 精选资料
Oracle左(外)、右(外)、全(外)、(内)连接语法与SQL标准的比较
Oracle+表连接方式(内连接-外连接-自连接)+详解
错误描述:oracle远程连接服务器出现 ORA-12170 TNS:连接超时 错误检查:有很多是oracle自身安装的问题,但是我这里服务器配置正常,监听正常,服务正常,远程可以ping通服务器。 这里主要是防火墙问题,解决办法: ...
左外连接右外连接,内连接区别,oracle的开发中很需要的,大家看看吧
oracle数据库表左连接右连接全连接的认识
屏蔽了1521端口 Oracle远程连接数据库总结 注:本文讲述了oracle数据库实例连接的配置过程,三个重要的配置文件位于C:\oracle\product\10.1.0\Db_1\NETWORK\ADMIN目录下 1. sqlplus sys/oracle@orcl sqlnet.ora 文件...
JAVA 使用数据库连接池连接Oracle数据库,全代码,附加详细说明
强制释放Oracle数据连接方案,经常会遇到数据库无法连接,发现是连接数超过限制,如何能够看到默认的数据库连接数量限制呢,如何能够增大数量限制呢? .......
Oracle连接有多中,我是在平常开发项目过程中用到的Oracle左连接进行了简单的阐述。
Oracle最大连接数
C#中连接oracle连接方法C#中连接oracle连接方法C#中连接oracle连接方法C#中连接oracle连接方法C#中连接oracle连接方法C#中连接oracle连接方法
理解oracle中的外连接,希望对下载的人有帮助
Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具plsql11x64位Oracle连接工具...
word文件,深入讲解Oracle的外连接查询
oracle客户端配置连接oracle客户端配置连接oracle客户端配置连接
oracle修改最大连接数
oracle数据库连接工具oracle数据库连接工具oracle数据库连接工具
oracle数据库连接包 oracle数据库连接包 java的