Oracle内连接、外连接、右外连接、全外连接 实现表关联显示
来源:互联网 发布:linux 串口调试工具 编辑:程序博客网 时间:2024/06/14 22:58
实现多表(字段部分相同)关联显示
A表:
select t1.uuid,t1.fname,t2.username from t_file t1,t_admin t2 where t1.aid=t2.uuid and t1.status= 1;B表:
select t1.uuid,t1.fname,t3.realname from t_file t1,t_teacher t3 where t1.tid=t3.uuid and t1.status= 1
要求显示效果大概这样。
解决方法:
用oracle 右外连接 就可以了。下面是参考的:http://www.blogjava.net/hello-yun/archive/2011/04/08/347890.htmlselect t1.uuidt,t2.realname,t1.aid,t1.tid,t1.status from t_file t1,t_teacher t2,t_admin t3 where t1.tid =t2.uuid(+) and t1.aid=t3.uuid(+) and t1.status=1
表TESTA,TESTB,TESTC,各有A, B两列
A
B
001
10A
002
20A
A
B
001
10B
003
30B
A
B
001
10C
004
40C
连接分为两种:内连接与外连接。
A.内连接 (比较简单常用的)
内连接,即最常见的等值连接,例:
SELECT * FROM TESTA,TESTBWHERE TESTA.A=TESTB.A
显示:
A
B
A
B
001
10A
001
10B
B.外连接
外连接分为左外连接,右外连接和全外连接。
1. 左外连接 left outer join 或者 left join
左外连接就是在等值连接的基础上加上主表中的未匹配数据,例:
SELECT *FROM TESTA LEFT OUTER JOIN TESTB ON TESTA.A=TESTB.AOracle 支持另一种写法SELECT * FROM TESTA,TESTBWHERE TESTA.A=TESTB.A(+)
结果:
A
B
A
B
001
10A
001
10B
002
20A
三个表做左外连接
SELECT *FROM TESTA LEFT OUTER JOIN TESTB ON TESTA.A=TESTB.ALEFT OUTER JOIN TESTCON TESTA.A=TESTC.AOracle 支持的另外一种写法SELECT *FROM TESTA,TESTB,TESTCWHERE 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.AOracle支持的另一种写法
SELECT *FROM TESTA,TESTBWHERE 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 TESTBON TESTA.A=TESTB.A
全外连接的等价写法,对同一表先做左连接,然后右连接
SELECT TESTA.*,TESTB.*FROM TESTALEFT OUTER JOIN TESTBON TESTA.A=TESTB.AUNIONSELECT TESTA.*,TESTB.*FROM TESTBLEFT OUTER JOIN TESTAON TESTA.A=TESTB.A
结果:
A
B
A
B
001
10A
001
10B
002
20A
003
30B
2 0
- Oracle内连接、外连接、右外连接、全外连接 实现表关联显示
- 内连接,外连接,左连接,右连接,全连接
- 【Oracle】多表连接查询——内连接、左连接、右连接、全连接(外连接)、完全连接
- 内连接,外连接,左连接,右连接,全连接,内连接,交叉连接,自连接
- 内连接,外连接,左连接,右连接,全连接,内连接,交叉连接,自连接
- oracle中emp表的内连接,左外连接,右外连接,全外连接
- oracle中emp表的内连接,左外连接,右外连接,全外连接
- oracle中emp表的内连接,左外连接,右外连接,全外连接
- 左外连接,右外连接,全连接,内连接。
- 左外连接、右外连接、内连接、全连接
- 左外连接、右外连接、内连接、全连接
- Oracle 的四种连接-左外连接、右外连接、内连接、全外连接
- Oracle 的四种连接-左外连接、右外连接、内连接、全连接
- Oracle 的四种连接-左外连接、右外连接、内连接、全连接
- 内连接、外连接[左连接、右连接、全连接]、交叉连接、自连接
- Oracle内连接、外连接、右外连接、全外连接小总结
- Oracle内连接、外连接、右外连接、全外连接小总结
- Oracle内连接、外连接、右外连接、全外连接小总结
- Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in /***
- java泛型简介
- Medial Queries的另一用法——服务于IE
- window64下redis的安装与测试
- 面向对象设计的五大原则
- Oracle内连接、外连接、右外连接、全外连接 实现表关联显示
- 欢迎使用CSDN-markdown编辑器
- 论常量和变量的实质
- javascript笔记之---Date类型
- ThinkPHP3.2.3---ajaxreturn的应用:一个在搜索框中输入,实时动态显示模糊搜索结果
- iOS检查版本更新
- 黑马程序员——函数与数组
- [Unity3D]Physics System - Rigidbody[未完待续]
- 网络、线程、UI的那点事