实现关联条件的casewhen效果

 select p.pcmxid,
       j.csjtf * p.jsrs + j.dpf * p.jsrs + j.zsf * p.jsrs * p.sjts +
       j.clbzf * p.jsrs * p.sjts + j.bxf * p.jsrs * p.sjts as jsxj
  from pcmx p
  
 left join (----关联一个过渡表
 select  p.pcmxid,
 case when j2.pcmxid is not null then 
     j2.jsjfbzid
    else  j.jsjfbzid
       end   as jsjfbzid
  from pcmx p ,jsjfbz j,jsjfbz j2
 where j.pcmxid is null and p.pcmxid = j2.pcmxid(+)) tem on tem.pcmxid=p.pcmxid
 
 left join jsjfbz j
    on j.jsjfbzid = tem.jsjfbzid
    
      where p.pcmxid=
 'ce15d0421c20f2403fa48dc4b8b96e57'

这样就实现了当jsjfbz .pcmxid is not null时关联一条数据jsjfbz .pcmxid is null时关联另一条数据

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值