oracle表与表之间连接对比整理

时间:2022-02-07 22:06:52

表与表之间的操作主要包括:内连接,外连接,交叉连接

先举两个表的例子:

oracle表与表之间连接对比整理

oracle表与表之间连接对比整理

1、内连接 inner join on

作用效果:

内联结就是将左表的所有数据分别于右表的每条数据进行连接组合,返回的结果为同时满足左右表联接条件的数据。

例句:

select * 

from t_student 

inner join t_score on t_student.id=t_score.id 

结果:

oracle表与表之间连接对比整理

2、外连接  (主要包括以下3中)

       2.1、left  join  左外连接

     作用效果:

左外联结就是将左表的所有数据分别于右表的每条数据进行连接组合,返回的结果除内连接的数据外,还有左表中不符合条件的数据,并在右表的相应列中填上null值。

      例句:

select * 

from t_student 

left join t_score on t_student.id=t_score.id 

   结果:

oracle表与表之间连接对比整理


       2.2、right join 右外连接

作用效果:

右外联结就是将右表中的所有数据分别与左表的每条数据进行连接组合,返回的结果除了内连接的数据外,还有右表中不符合条件的数据,并在左表相应的列中填上null值。

例句:

select * 

from t_student 

right join t_score on t_student.id=t_score.id  

结果:

oracle表与表之间连接对比整理

       2.3、full join  全外连接

作用效果:

全外联接就是将左表的所有数据分别与右表的每条数据进行连接组合,返回的结果除了内连接的数据外,还有两个表中不符合条件的数据,并在左表或者右表的相应列中填上null值。

例句:

select * 

from t_student 

full join t_score on t_student.id=t_score.id  

结果:

oracle表与表之间连接对比整理

3、cross  交叉链接

作用效果:

交叉连接不带WHERE 子句,它返回被连接的两个表所有数据行的笛卡尔积,返回到结果集合中的数据行数等于第一个表中符合查询条件的数据行数乘以第二个表中符合查询条件的数据行数。

例句:

select * 

from t_student 

cross join t_score  

结果:

oracle表与表之间连接对比整理