码迷,mamicode.com
首页 > 数据库 > 详细

oracle with as 用法

时间:2017-12-15 11:40:54      阅读:244      评论:0      收藏:0      [点我收藏+]

标签:oracle   with as   查询结果重复使用   

With查询语句已with开头,相当于在查询之前先构建一个临时表,被指定的查询结果存与临时表中,之后便可多次使用它做进一步的分析和处理。


语法:

with _tempTable as (select * from table )

select  * from _tempTable

例子:

with _tempStudent as(

select * from t_student t where class = '初二3班'

)

select sex,count(1) nums from _tempStudent where sex = '男' and height > '170'

union all

select sex,count(1) nums from _tempStudent where sex = '女' and height > '160'


多个with as 用法 每个临时存量直接用 "," 隔开

with t1 as (

     select * from student where name in('张三','李四')

),t2 as (

     select * from student where name in('王五')

)

select * from t1

union 

select * from t2


如果with as 有嵌套的情况, 多个with as,后面的as内部可以直接调用先声明的临时对象

with t1 as (

     select * from student where name in('张三','李四')

),t2 as (

     select * from t1 where name in('王五')

)

select * from t2


oracle with as 用法

标签:oracle   with as   查询结果重复使用   

原文地址:http://blog.51cto.com/yaogz/2050972

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!