日期:2014-05-16  浏览次数:20469 次

oracle笔记(十四)Oracle的高级查询链接类型

Join_type连接类型分类如下:

1、? 内连接:

内连接根据所使用的比较方式不同,把内连接分为了:

1)? 等值连接:在连接条件中使用等于号(=)运算符比较被连接列的列值,其查询结果中列出被连接表中的所有列,包括其中的重复列。

SQL> select * from emp e inner join dept d on e.deptno = d.deptno;

2)? 不等连接:在连接条件使用除等于运算符以外的其它比较运算符比较被连接的列的列值。这些运算符包括>>=<=<!>!<<>

SQL> select * from emp e inner join dept d on e.deptno>d.deptno;

3)? 自然连接:在连接条件中使用等于(=)运算符比较被连接列的列值,但它使用选择列表指出查询结果集合中所包括的列,并删除连接表中的重复列。

SQL> select * from emp natural join dept;

SQL> select? e.*,d.dname,d.loc? from emp e inner join dept d on e.deptno = d.deptno;

SQL> select d.*,e.ename,e.empno,e.job,e.mgr,e.hiredate,e.sal,e.comm from emp e inner join dept d on e.deptno=d.deptno;

?

备注:Distinct是去掉重复的行,而自然连接是去掉重复的列。

?

2、? 外连接