博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
oracle子查询
阅读量:6151 次
发布时间:2019-06-21

本文共 1706 字,大约阅读时间需要 5 分钟。

子查询:在一个查询的内部包含另外一个查询。

普通子查询

-- 查询出比7654工资还高的所有雇员的信息select * from emp e where e.sal > (select sal from emp where empno = 7654);-- 查询出工资比7654高,同一时候与7788从事同样工作的所有雇员的信息select * from emp ewhere e.sal > (select sal from emp where empno = 7654)and e.job = (select job from emp where empno = 7788);-- 查询出工资最低的雇员姓名、工作、工资select e.ename, e.job, e.sal from emp ewhere e.sal = (select min(sal) from emp);

in 查询

in keyword用来匹配一个集合中的记录

-- 查询雇员编号为1234,2345,7369,7900的雇员信息select * from emp where empno in(1234, 2345, 7369, 7900);

-- 查询雇员编号不是 1234,2345。7369,7900的雇员信息select * from emp where empno not in(1234, 2345, 7369, 7900);

-- 查询每一个部门的最低工资相应的员工信息select * from emp where sal in (select min(sal) from emp group by deptno);

anykeyword

any:表示随意的。

< any 比子查询返回的随意一个结果小就可以,即小于返回结果的最大值

= any 和子查询中随意一个结果相等就可以。相当于in

> any 比子查询返回的随意一个结果大就可以,即大于返回结果的最小值

-- 查询每一个部门的最低工资select min(sal) min_sal from emp group by deptno;

sal 大于 any (每一个部门最低工资),即大于返回结果的最小值

select * from emp where sal > any (select min(sal) from emp group by deptno);

sal = any (每一个部门最低工资),即 和子查询中每一个结果相等,同in

select * from emp where sal = any (select min(sal) from emp group by deptno);

sal < any (每一个部门最低工资)。即大于返回结果的最大值

select * from emp where sal < any (select min(sal) from emp group by deptno);

allkeyword

all:表示全部的。

< all 比子查询返回的全部的结果都小,即小于返回结果的最小值

> all 比子查询返回的全部的结果都大,即大于返回结果的最大值

= all 无意义。逻辑上也不成立

查询工资在2000 到 3500的工资段的工资集合

select distinct sal from emp where sal between 2000 and 3500;

> all (工资在2000 到 3500的工资段的工资集合) ,即大于最大值

select * from emp where sal > all(select distinct sal from emp where sal between 2000 and 3500);

< all (工资在2000 到 3500的工资段的工资集合),即小于最小值

select * from emp where sal < all(select distinct sal from emp where sal between 2000 and 3500);

你可能感兴趣的文章
嵌入式,代码调试----GDB扫盲
查看>>
类斐波那契数列的奇妙性质
查看>>
下一步工作分配
查看>>
Response. AppendHeader使用大全及文件下载.net函数使用注意点(转载)
查看>>
Wait Functions
查看>>
jQuery最佳实践
查看>>
centos64i386下apache 403没有权限访问。
查看>>
jquery用法大全
查看>>
PC-BSD 9.2 发布,基于 FreeBSD 9.2
查看>>
网卡驱动程序之框架(一)
查看>>
css斜线
查看>>
Windows phone 8 学习笔记(3) 通信
查看>>
Revit API找到风管穿过的墙(当前文档和链接文档)
查看>>
Scroll Depth – 衡量页面滚动的 Google 分析插件
查看>>
Windows 8.1 应用再出发 - 视图状态的更新
查看>>
自己制作交叉编译工具链
查看>>
Qt Style Sheet实践(四):行文本编辑框QLineEdit及自动补全
查看>>
[物理学与PDEs]第3章习题1 只有一个非零分量的磁场
查看>>
深入浅出NodeJS——数据通信,NET模块运行机制
查看>>
onInterceptTouchEvent和onTouchEvent调用时序
查看>>