Oracle With As 用法

with new_balance_transaction as  (select bt.owner_id, bt.owner_type,bt.payment_type,
bt.balance_amount,bt.commision_amount, bt.COMMISION_RATE,  bt.status,bt.transaction_type,bt.create_time, 
(case when bt.status=0 then bt.balance_amount else 0 end) invlid_total_balance_amount, 
(case when bt.status=1 then bt.balance_amount else 0 end) vlid_total_balance_amount, 
(case when bt.status=0 then bt.commision_amount else 0 end) invlid_total_commision_amount, 
(case when bt.status=1 then bt.commision_amount else 0 end) vlid_total_commision_amount 
from balance_transactions bt where bt.owner_id is Not null 
and bt.create_time >=  to_timestamp('2014-09-01 00:00:00.000000','yyyy-mm-dd hh24:mi:ssxff') 
and bt.create_time <=  to_timestamp('2014-09-30 23:59:59.999999','yyyy-mm-dd hh24:mi:ssxff') ), 
balance_transaction_report as (
select o.login_name as owner,  nbt.owner_type, nbt.payment_type,
nbt.balance_amount,nbt.commision_amount,nbt.COMMISION_RATE,
nbt.status,nbt.transaction_type,nbt.create_time, 
nbt.invlid_total_balance_amount,nbt.vlid_total_balance_amount, 
nbt.invlid_total_commision_amount,nbt.vlid_total_commision_amount  
from new_balance_transaction nbt, operator o
where nbt.owner_id = o.operator_id and nbt.owner_type =1 
union all  
select m.merchant_name as owner, 
nbt.owner_type, nbt.payment_type,
nbt.balance_amount,nbt.commision_amount,
nbt.COMMISION_RATE, nbt.status,nbt.transaction_type,
nbt.create_time, nbt.invlid_total_balance_amount,nbt.vlid_total_balance_amount,
nbt.invlid_total_commision_amount,nbt.vlid_total_commision_amount 
 from new_balance_transaction nbt, merchant m where nbt.owner_id = m.merchant_id and nbt.owner_type =2 )  
select  brr.owner,brr.owner_type,brr.payment_type, brr.balance_amount,
brr.commision_amount,brr.COMMISION_RATE,brr.status,brr.transaction_type,brr.create_time,
brr.invlid_total_balance_amount,brr.vlid_total_balance_amount,
brr.invlid_total_commision_amount, brr.vlid_total_commision_amount from balance_transaction_report brr 
order by brr.create_time DESC

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值