-----------------------------------------------Oracle的sql1999对sql的支持---------------------------------------------

交叉连接CROSS  JOIN(了解)

交叉连接会产生笛卡尔积

Oracle的sql1999对sql的支持

1.  自然连接NATURAL JOIN(了解)

自然连接会自动的分析管理条件进行连接,去掉笛卡尔积。

Oracle的sql1999对sql的支持

2.  USING子句,直接管理操作(了解)

Oracle的sql1999对sql的支持

3.  ON子句,自己编写连接条件(重要)

On相当于where

Oracle的sql1999对sql的支持

4.  左连接和右连接LEFT JOIN和RIGHT JOIN(重要)

Oracle的sql1999对sql的支持

代码示例:

select * from emp cross join dept; --交叉连接,会产生笛卡尔积

 

select * from emp, dept;

 

select * from emp natural join dept; --自然连接不会产生笛卡尔积

 

select * from emp e,dept d where e.deptno=d.deptno; --相当于自然连接,除了位置不同

 

select * from emp join dept using(deptno) where dept.deptno=20; --直接管理操作

 

select * from emp e, dept d where e.deptno=d.deptno and d.deptno = 20; --直接管理操作相当于这条语句

 

select * from emp e join dept d on e.deptno = d.deptno and d.deptno = 20; --on相当于where

 

--sql 1999 外链接查询为重点掌握知识

select * from dept d left join emp e on d.deptno = e.deptno; --sql 1999 外链接-左连接

 

select * from dept d ,emp e where d.deptno=e.deptno(+);

 

select * from emp e right join dept d on e.deptno=d.deptno; --sql 1999 外链接-右连接

 

select * from emp e ,dept d where e.deptno(+) = d.deptno;

 

select * from emp e left join emp e1 on e.mgr=e1.empno; --使用sql 1999 查询出所有员工的上级领导

 

select * from emp e, emp e1 where e.mgr = e1.empno(+);

相关文章:

  • 2022-12-23
  • 2021-04-08
  • 2021-05-24
  • 2022-12-23
  • 2021-07-27
  • 2021-11-16
  • 2022-02-22
猜你喜欢
  • 2021-08-30
  • 2022-12-23
  • 2022-01-11
  • 2022-12-23
  • 2022-12-23
  • 2021-10-11
  • 2022-12-23
相关资源
相似解决方案