Oracle数据库With AS用法

with as 的用法:

格式: With 名字 AS (一个查询的结果)
案例1:

With 查询结果 AS 
(
     select t.wo_id,t.lot_id,t.main_qty from wip_lot t
     where LOT_TYPE='FC'
     and BRANCH_OF_PROCESS='30'
)
select * from 查询结果

解释: 通过条件筛选wip_lot表的结果 : t.wo_id,t.lot_id,t.main_qty。并且把这个结果命名为查询结果,之后再在这个查询结果里边查询全部内容。查询结果 相当于一个筛选过的表。

案例1输出结果:
在这里插入图片描述

案例2: 存在多个需要筛选的表

With 批次查询结果 AS 
(
     select t.wo_id,t.lot_id,t.main_qty from wip_lot t
     where LOT_TYPE='FC'
     and BRANCH_OF_PROCESS='30'
),
     工单查询结果 AS
(
     select t.doc_id,t.CUSTOMER_CODE,t.LOT_TYPE
     from wip_wo t
)    
select ta.*,tb.* 
from 批次查询结果 ta
inner join 工单查询结果 tb on tb.doc_id=ta.wo_id

解释: wip_lot表的筛选结果作为 批次查询结果(ta) ,wip_wo表的筛选结果作为 工单查询结果(tb) 再把两次的查询结果作为多表关联查询。所以 WIth As 的使用比较多是在那种查询结果要很多表的数据经过层层筛选取到的值。
在这里插入图片描述

  • 2
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值