Oracle中join用法的演示

数据库 Oracle
关于Oracle中join用法在网上或是相关资料上的描述不是很多,所以今天我们专门为想了解Oracle中join用法的朋友提供了以下的资料,望你会有所了解。

以下的文章主要介绍的是Oracle中join用法,如果你是其方面的新手,对Oracle中oin的实际用法很感兴趣,但是却找不到一些资料去对其进行更深入的了解的话,你不妨浏览以下的文章对其进行了解。

Oracle中join的用法

8i:

 

  1. create table dali.test1(a int,b int);  
  2. create table dali.test2(a int,b int);  
  3. insert into dali.test1 values(1,456);  
  4. insert into dali.test1 values(2,427);  
  5. insert into dali.test2 values(1,45456);  
  6. insert into dali.test2 values(3,45656);  

 

 

内连接

 

  1. select * from dali.test1 a, dali.test2 b where a.a=b.a; 

 

左连接

 

  1. select * from dali.test1 a, dali.test2 b where a.a=b.a(+); 

 

右连接

 

  1. select * from dali.test1 a, dali.test2 b where a.a(+)=b.a; 

 

完全连接

 

  1. select * from dali.test1 a, dali.test2 b where a.a=b.a(+)  
  2. union  
  3. select * from dali.test1 a, dali.test2 b where a.a(+)=b.a;  

 

 

迪卡尔

 

  1. select * from dali.test1, dali.test2; 

 

 

 

9i和sqlserver一样 left join,right join,full join

 

分为1. INNER JOIN 2. LEFT JOIN 3. RIGHT JOIN 4.LEFT OUTER JOIN

在实现Oracle中join用法中首先设定一个我们要用的两个表

表A 表B

ID NAME ID CLASS

1 IBM 1 C1

2 SONY 3 C3

3 BMW 4 C4

1 INNER JOIN: SELECT * FROM A INNER JOIN B ON A.ID=B.ID

得表 ID NAME CLASS

1 IBM C1

3 BMW C3

对了 就是 两个表的ID都存在并相同 得到这两个表的组合表

2 LEFT JOIN : SELECT * FROM A LEFT JOIN B ON A.ID=B.ID

得表 ID NAME CLASS

1 IBM C1

2 SONY null

3 BMW C3

没晕吧 如果还有方向感 就行 LEFT(左) 得到的是A(left语句的左边的表)的所有记录 而B表对应的记录没有的话也要补齐 (真霸道! 呵呵)

3 RIGHT JOIN : SELECT * FROM A RIGHT JOIN B ON A.ID=B.ID

得表 ID NAME CLASS

1 IBM C1

3 BMW C3

4 null C4

对了RIGHT(右) 得到的是B(right语句的右边的表)的所有记录 而A表对应的记录没有的话也要补齐 (我也翻身了! 呵呵)

4 FULL OUTER JOIN: SELECT * FROM A FULL OUTER JOIN B ON A.ID=B.ID

得表 ID NAME CLASS

1 IBM C1

2 SONY null

3 BMW C3

4 null C4

 

以上的相关内容就是对Oracle中join用法的介绍,望你能有所收获。 

【编辑推荐】

  1. Oracle函数如何把符串装换为小写的格式
  2. Oracle函数的多种的分类
  3. Oracle9i分析函数的实际应用
  4. Oracle函数中的两大函数简介
  5. Oracle日期函数中常用的几大函数
责任编辑:佚名 来源: 互联网
相关推荐

2010-04-02 15:22:02

Oracle join

2010-04-26 15:30:45

Oracle join

2019-04-16 15:18:28

SQLJOIN数据库

2010-06-07 16:22:55

MySQL数据库

2010-04-16 16:41:53

rownum用法

2011-08-23 18:19:19

Oracle行转列Join用法

2009-05-07 15:02:42

OracleJoin查询

2011-04-12 11:32:31

Oraclerownum用法

2009-01-14 09:28:12

OracleSQL10g

2010-04-20 08:53:42

Oracle左连接

2010-10-27 15:03:47

Oracle with

2010-05-10 09:21:52

Oracle数据获取

2010-04-09 16:26:53

Oracle join

2010-03-30 08:45:35

Oracle导入

2010-10-25 16:52:48

oracle管道函数

2010-04-29 16:06:47

Oracle rown

2010-10-25 14:28:53

oracle trun

2010-04-28 11:56:09

Oracle临时表

2011-08-03 13:11:10

Oracle数据库序列

2010-04-21 15:02:50

Oracle使用游标
点赞
收藏

51CTO技术栈公众号