Oracle子查询详解,根据查询的结果(内部嵌套查询的结果)把子查询的类型分为单行子查询与多行子查询,

子查询概念 :当一个查询的结果是另一个查询的条件时,,称之为子查询。

使用子查询注意事项:

子查询可以嵌套多层

子查询需要圆括号()括起来

子查询语法:

SELECT select_list

FROM table

WHERE expr operator

(SELECT select_list

FROM table);

l 子查询 (内查询) 在主查询之前一次执行完成。

l 子查询的结果被主查询使用 (外查询)。

举例:查询员工的工资大于JONES的员工信息

分析过程如下:

首先:查询JONES的员工工资是多少 :结果2975

SQL> select sal from emp where ename='JONES';

实际上我们要查询的是:薪资大于2975的员工的信息写法如下:

SQL> select * from emp where sal>2975;

//综合以上写出子查询的结果如下:

SQL> select * from emp where sal>(select sal from emp where ename='JONES');

注意:

l 子查询要包含在括号内。

l 将子查询放在比较条件的右侧。

根据查询的结果(内部嵌套查询的结果)把子查询的类型分为单行子查询与多行子查询,

注意:

l 单行操作符对应单行子查询,多行操作符对应多行子查询。

单行操作符

>、>=、 、=

举例:

//查询编号7876相同职位的员工信息 并且薪资大于编号为7521的薪资的员工信息

SQL> select * from emp where job=( select job from emp where empno=7876) and sal>( select sal from emp where empno=7521);

//子查询含有组函数

SQL> select * from emp where sal>(select avg(nvl(sal,0)) from emp);

//子查询含有having子句查询部门的最小工资大于20号部门最小工资的部门号及最小工资数

SQL> select deptno,min(sal) from emp group by deptno having min(sal)>( select min(sal) from emp where deptno=20);

备注:子查询可以返回空行 没要查询到结果是可以的。

多行子查询

l 返回多行。

l 使用多行比较操作符。

操作符如下图:

操作符

描述

In

等于列表中的任何一个

Any

子查询返回的任意一个值比较 相同还有some

All

和子查询返回的所有值比较

Exists

//查询薪水小于工作岗位CLERK的任何一个薪资的员工信息并且不包含工作岗位为CLERK的员工信息

SQL> select * from emp where sal < any (select sal from emp where job='CLERK') and job<>'CLERK';

//all与所有值比较 >all 代表的是大于查询结果的最大值

SQL> select * from emp where sal > all (select sal from emp where job='CLERK') and job<>'CLERK';

//查询岗位与部门编号为10相同的员工信息 不包含自己。

SQL> select * from emp where job in(select job from emp where deptno=10) and deptno<>10;

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

oracle做子查询注意事项,Oracle子查询详解相关推荐

  1. oracle数据库按日期查询,关于Oracle数据库日期范围查询的两种实现方法详解,oracle详解...

    关于Oracle数据库日期范围查询的两种实现方法详解,oracle详解 Oracle数据库日期范围查询有两种方式:to_char方式和to_date方式,接下来我们通过一个实例来介绍这一过程.我们假设 ...

  2. python 子字符串 位置_python查找子字符串位置Python变量和数据类型详解

    Python变量和数据类型 Python中数据类型 Python之print语句 Python的注释 Python中什么是变量 Python中定义字符串 Python中raw字符串与多行字符串 Pyt ...

  3. 《oracle大型数据库系统在AIX/unix上的实战详解》讨论31: oracle、sybase 数据库的不同访问...

    <Oracle大型数据库系统在AIX/UNIX上的实战详解> 讨论31:  oracle.sybase 数据库的不同访问方式   文平. 用户来信要求更细节比较一下Oracle和sybas ...

  4. Oracle大型数据库系统在AIX/UNIX上的实战详解

    前言 风,紧, 夜,深沉, 剑,已出鞘, 影,飘然前行! 本书的立意和内容 在服务器领域,IBM p系列服务器与AIX操作系统毫无疑问是UNIX服务器领域中的佼佼者,它代表着UNIX深刻的技术内涵和广 ...

  5. xpath 取标签下所有文字内容_对Xpath 获取子标签下所有文本的方法详解

    对Xpath 获取子标签下所有文本的方法详解 在爬虫中遇见这种怎么办 想提取名称, 但是 名称不在一个标签里 使用xpath string()方法 例如 data.xpath("string ...

  6. SVM中拉格朗日乘子法、KKT条件、对偶问题详解

    SVM中拉格朗日乘子法.KKT条件.对偶问题详解 创作目的 1.SVM回顾 2.拉格朗日乘子法 3.KKT条件 4.对偶问题 强对偶性证明 总结 创作目的 我是机器学习初学者,目前正在上机器学习课,老 ...

  7. 媒体查询(-@media)的用法详解

    媒体查询(-@media)的用法详解 媒体查询可以用来干什么? @media的作用:媒体查询可以在指定的设备上使用对应的样式替代原有的样式. 可以简单理解为:告诉浏览器,当满足某条件时,调用某样式.当 ...

  8. http状态码查询,各种返回码的详解(200、206、500、416、403、404)

    http状态码查询,各种返回码的详解(200.206.500.416.403.404) 文章由帮客之家于2013-11-25 12:11:44分享 评论(324) HTTP状态码,我都是现查现用. 我 ...

  9. ORACLE sequence各参数及创建修改删除使用详解示例

    ORACLE没有自增数据类型,如需生成业务无关的主键列或惟一约束列,可以用sequence序列实现. CREATE SEQUENCE语句及参数介绍: 详见官方文档:http://docs.oracle ...

最新文章

  1. springboot 集成jwt设置过期时间_传说中的jwt,我们来征服一下
  2. java-1.11.0的环境配置,JAVA 环境配置
  3. 最快捷的Linux命令查询工具来了:「我该怎么做XX」,一句话自动返回操作指南...
  4. AlphaImageLoader用法
  5. Android文档-开发者指南-第一部分:入门-中英文对照版
  6. android 自定义皮肤,Android Studio 自定义皮肤主题和背景
  7. php td内容换行,table单元格内容过多换行显示
  8. java 注解妙用_框架开发之Java注解的妙用
  9. 参数形参错误之 SyntaxError: non-default argument follows default argument
  10. vins中imu融合_VINS-Mono代码分析与总结(最终版)
  11. mounted钩子函数_Vue 探索之路——生命周期和钩子函数的一些理解
  12. Intel 64/x86_64/x86/IA-32处理器标志寄存器详解(4) - 32位EFLAGS - 状态标志与控制标志
  13. 开机提示ntldr is missing解决方法
  14. linux sudo输入密码无法获得锁,Linux系统提示无法获得锁/var/lib/dpkg/lock怎么办?
  15. php7的核心开发者,php7 五大新特性
  16. jQuery学习笔记--JqGrid相关操作 方法列表(上)
  17. [Python+MATLAB] 在Python中使用MATLAB (持续更新中)
  18. 给 Chrome浏览器 添加 Javascript小书签,查看当前页面全部加载的javascript文件及代码片段...
  19. 若干个数据首尾相连,构成一个圆环,找到连续的4个数之和最大的一段。 C++
  20. 新的一年,如何打开超级APP发展格局

热门文章

  1. 解密诡异并发问题的幕后黑手:可见性问题
  2. 我用MRS-ClickHouse构建的用户画像系统,让老板拍手称赞
  3. 解读多云跨云下的容器治理与实践
  4. 不给糖果就捣乱,用Python绘制有趣的万圣节南瓜怪【华为云分享】
  5. LB服务:硬件如何被软件取代(上)
  6. Redis进阶篇主从复制----哨兵模式
  7. GprMax 3.1.5 建模的in文件编写详解(2)
  8. 2020年7月4日 随机过程大作业
  9. Excel中快速调整行高或列宽为适合内容显示的长度
  10. 搭建vue脚手架_webpack搭建vue脚手架