select * from 表A where id in (select id from 表B)[/
1、单行子查询 select ename,deptno,sal from emp where deptno=(select deptno from dept where loc='NEW YORK') 2、多行子查询 SELECT ename,job,sal FROM EMP WHERE deptno in ( SELECT deptno FROM dept WHERE dname LIKE 'A%') 3、多列子查询 SELECT deptno,ename,job,sal FROM EMP WHERE (deptno,sal) IN (SELECT deptno,MAX(sal) FROM EMP GROUP BY deptno) 4、内联视图子查询 (1)SELECT ename,job,sal,rownum FROM (SELECT ename,job,sal FROM EMP ORDER BY sal); (2)SELECT ename,job,sal,rownum FROM ( SELECT ename,job,sal FROM EMP ORDER BY sal) WHERE rownum<=5 5、在HAVING子句中使用子查询 SELECT deptno,job,AVG(sal) FROM EMP GROUP BY deptno,job HAVING AVG(sal)>(SELECT sal FROM EMP WHERE ename='MARTIN')
子查询基础知识 http://msdn.microsoft.com/zh-cn/library/ms189575.aspx子查询是一个嵌套在 SELECT、INSERT、UPDATE 或 DELETE 语句或其他子查询中的查询。任何允许使用表达式的地方都可以使用子查询。在此示例中,子查询用作 SELECT 语句中名为 MaxUnitPrice 的列表达式。有三种基本的子查询。它们是: 1、在通过 IN 或由 ANY 或 ALL 修改的比较运算符引入的列表上操作。2、通过未修改的比较运算符引入且必须返回单个值。3、通过 EXISTS 引入的存在测试。
select a,(select from 表B) from 表Aselect a from 表A a where a.id in (select ...........)两种方式
where id in (select id from 表B)[/
select ename,deptno,sal
from emp
where deptno=(select deptno from dept where loc='NEW YORK')
2、多行子查询
SELECT ename,job,sal
FROM EMP
WHERE deptno in ( SELECT deptno FROM dept WHERE dname LIKE 'A%')
3、多列子查询
SELECT deptno,ename,job,sal
FROM EMP
WHERE (deptno,sal) IN (SELECT deptno,MAX(sal) FROM EMP GROUP BY deptno)
4、内联视图子查询
(1)SELECT ename,job,sal,rownum
FROM (SELECT ename,job,sal FROM EMP ORDER BY sal);
(2)SELECT ename,job,sal,rownum
FROM ( SELECT ename,job,sal FROM EMP ORDER BY sal)
WHERE rownum<=5
5、在HAVING子句中使用子查询 SELECT deptno,job,AVG(sal) FROM EMP GROUP BY deptno,job HAVING AVG(sal)>(SELECT sal FROM EMP WHERE ename='MARTIN')
http://msdn.microsoft.com/zh-cn/library/ms189575.aspx子查询是一个嵌套在 SELECT、INSERT、UPDATE 或 DELETE 语句或其他子查询中的查询。任何允许使用表达式的地方都可以使用子查询。在此示例中,子查询用作 SELECT 语句中名为 MaxUnitPrice 的列表达式。有三种基本的子查询。它们是: 1、在通过 IN 或由 ANY 或 ALL 修改的比较运算符引入的列表上操作。2、通过未修改的比较运算符引入且必须返回单个值。3、通过 EXISTS 引入的存在测试。
from 表Aselect a
from 表A a
where a.id in (select ...........)两种方式