数据库基础知识实践(四)-----SQL嵌套查询

上一篇 / 下一篇  2009-01-20 15:06:49 / 个人分类:ORACLE

    在select查询语句里可以嵌入select查询语句,称为嵌套查询。

    注意:子查询可以嵌套多层,自查询操作的数据表可以是父查询不操作的数据表。子查询中不能有order by 分组语句。

    1.简单嵌套查询

      select emp.empno,emp.ename,emp.job,emp.sal

      from emp

      where sal>=(select sal from emp where ename='小白');

    2.带[in] 的嵌套查询

      select emp.empno,emp.ename,emp.job,emp.sal

      from emp

      where sal in (select sal from emp where ename='小白') ;

    3.带[any] 的嵌套查询

     select emp.empno,emp.ename,emp.job,emp.sal

     from emp

     where sal>any(select sal from emp where job='MANAGER');

    4.带[some]的嵌套查询

     select emp.empno,emp.ename,emp.job,emp.sal

     from emp

     where sal=some(select sal from emp where job='MANAGER');

    5.带[all]的嵌套查询

     select emp.empno,emp.ename,emp.job,emp.sal

     from emp

     where sal>all(select sal from emp where job='MANAGER');

    6.带exists的嵌套查询

     select emp.empno,emp.ename,emp.job,emp.sal

     from emp,dept

     where exists

     (select * from emp where emp.deptno=dept.deptno);

     7.并操作的嵌套查询

     (select deptno from dept)

     union

     (select deptno from emp);

     8.交操作的嵌套查询

     (select deptno from dept)

     intersect

     (select deptno from emp);    

     9.差操作的嵌套查询

     (select deptno from dept)

     minus

     (select deptno from emp);

 


TAG: 数据库

 

评分:0

我来说两句

Open Toolbar