with as的学习

来源:互联网 发布:淘宝小二介入后不满意 编辑:程序博客网 时间:2024/05/16 08:12


在Oracle数据库开发中有时候对临时数据的一些处理,但是这些数据不想放在table里面,而且cursor的灵活性又不是很好,这个时候可以考虑with  as 了。

with as 是在内存总建立一个临时表, 可以对这个temp table里面的数据进行整理。

with test as (select 1 from dualunionselect 2 from dualunionselect 3 from dual)select * from test

 

得到一个temp table就可以对table的记录进行操作了, 例如邱平均数

with table1 as (select 1 as a from dualunionselect 2 as a from dualunionselect 3 as a from dual)select avg(a) from table1


还可以和现有的表进行联合查询。

 

由于with as 是内存在的table,所以还是比较快的。如果数据比较大的时候建议不要使用with as,不然的话变得很慢。

 

 

0 0
原创粉丝点击