PLSQL_基础系列10_子查询WITH AS(案例)

简介: 2015-05-29 Created By BaoXinjian 一、摘要 使用WITH AS 语句可以为一个子查询语句块定义一个名称,使用这个子查询名称可以在查询语句的很多地方引用这个子查询。 Oracle 数据库像对待内联视图或临时表一样对待被引用的子查询名称,从而起到一定的优化作用。

2015-05-29 Created By BaoXinjian

一、摘要


使用WITH AS 语句可以为一个子查询语句块定义一个名称,使用这个子查询名称可以在查询语句的很多地方引用这个子查询。

Oracle 数据库像对待内联视图或临时表一样对待被引用的子查询名称,从而起到一定的优化作用。

WITH子句是9i新增语法。你可以在任何一个顶层的SELECT 语句以及几乎所有类型的子查询语句前,使用子查询定义子句。

被定义的子查询名称可以在主查询语句以及所有的子查询语句中引用,但未定义前不能引用。

WITH句中不能嵌套定义<也就是with子句中不能有WIT子句>,但子查询中出现H的“子查询定义”语句可以引用已定义的子查询名称,<可以引用前面已经定义的with子句>

 

二、使用案例


使用案例方法

select e.ename
  from emp e
 where e.deptno in (select d.deptno from dept d where d.deptno = 10);

with a as
 (select e.ename, e.deptno from emp e)
select a.ename
  from a
 where a.deptno in
       (with b as (select d.deptno from dept d where d.deptno = 10)
         select * from b
        );

with a as
 (select e.ename, e.deptno from emp e),
b as
 (select d.deptno from dept d where d.deptno = 10)
select a.ename from a where a.deptno in (select * from b);

 

Thanks and Regards

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
9月前
|
数据采集 人工智能 安全
接入DeepSeek的云盒子AI知识库,欢迎内测!
云盒子AI智能知识库以其开放性和灵活性著称,目前正内测接入DeepSeek-R1。此次升级延续了云盒子的开放理念,为企业提供灵活选择,支持按需定制和自由适配。DeepSeek的加入拓展了知识库的能力边界,满足不同行业需求,提升了文档利用与知识获取的智能化水平。云盒子通过专利数据采集技术、深度解析、权限隔离和持续学习能力,确保高效、安全的知识管理。适用于单文档问答、企业内部知识管理、客户服务支持、教育与培训及医疗单位等多种场景,为用户带来全新体验。
465 1
|
消息中间件 JSON Java
开发者如何使用轻量消息队列MNS
【10月更文挑战第19天】开发者如何使用轻量消息队列MNS
839 99
|
数据采集 存储 运维
基于数据全生命周期的数据资产价值评估方法及应用
数据资产价值评估是现代数据资产管理和运营以及数据流通的基础。基于数据全生命周期理论,从第一性原则出发,通过评估单张数据资产表的成本、数据管理以及数据应用价值,实现对单张数据资产表的系统性评估。利用数据仓库和图算法等技术,以层为单位,每层分摊,血缘路径继承,精确计算得到单张数据资产表的成本价值;然后利用层次分析法得到数据资产非经济因素权重,进而得到数据资产阶梯价值;最后通过实例分析验证了新方法的合理性和可行性。
|
存储 关系型数据库 MySQL
MySQL的数据存储格式是什么?底层原理是什么?
MySQL的数据存储格式是什么?底层原理是什么?
1105 0
|
机器学习/深度学习
RBF神经网络案例——客户流失率预测(一)
RBF神经网络案例——客户流失率预测
249 0
|
存储 缓存 索引
环形缓冲区、链表及二叉树示例
环形缓冲区、链表及二叉树示例
199 0
|
SQL 监控 关系型数据库
MySQL|主从延迟问题排查(一)
大查询长时间执行无法释放DML读锁,后续同步主库的DDL操作获取DML写锁资源被阻塞等待,导致后续同步主库的操作堆积,主从延迟增长严重。从同步延迟的监控来看,延迟从17:11开始,17:51:59进行kill大查询操作,直到17:53建议业务方将大查询kill掉后才结束。
3493 0
MySQL|主从延迟问题排查(一)
|
自然语言处理 JavaScript 前端开发
为了一份mock数据,开启了Protobuf的救赎之路
为了一份mock数据,开启了Protobuf的救赎之路
|
消息中间件 存储 Java
RocketMQ集群配置
 RocketMQ 网络部署特点 Name Server是一个几乎无状态节点,可集群部署,节点之间无任何信息同步。
1780 0