ORACLE with..as...语句

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ORACLE with..as...语句相关的知识,希望对你有一定的参考价值。

       with...as ...语句用于将查询语句定义为某个名称,并可以再后续的查询块中引用。当查询名称与已有的表名重复时,with定义的查询块优先级高。with语句可以定义多个查询,中间使用逗号分隔。常用于定于需要反复查询某些表的视图中,使用with语句把需要查询的表定义为查询快再使用比直接在视图中反复的查询表效率要高一些。个人觉得with..as..的作用是把会反复使用的表字段在查询块中预先查询出来,为这个查询块定义一个名称,作用类似于一个临时表。

  例子:

 create or replace view test_with_as
 as 
 --定义with..as..查询块
 with     
 dept_info  as
 (select dept_name,dept_id  from dept),
 employee_info as
 (select  employee_name, employee_id, dept_id, salary   from employee)
 --调用with..as..中的查询块
 select d.*,t.* from dept_info  d  inner join employee_info  e on d.dept_id=e.dept_id;

本文出自 “天黑顺路” 博客,请务必保留此出处http://mjal01.blog.51cto.com/12140495/1975519

以上是关于ORACLE with..as...语句的主要内容,如果未能解决你的问题,请参考以下文章

Oracle中with as的用法 zf

Oracle中with as的用法

Oracle With As 查询

sql里面 with...as 是啥意思啊?如何使用

oracle with as 用法

ORACLE WITH AS 用法