Oracle 查询中判断语句的写法case when then else end

前端之家收集整理的这篇文章主要介绍了Oracle 查询中判断语句的写法case when then else end前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

查询时可能会根据某个条件来判断显示数据,此时就用到case语句 下面是一个查询示例: SELECT distinct a.certiType,a.certiNo,a.policyNo,d.riskCode,a.agentCode,(case when 'P' = a.certitype then b.sumpremium else c.chgpremium end ) as sumpremium,(select sacmain.disrate from sacmain where policyNo = a.policyno) as rate,d.confirmNo,d.uploadFlag FROM sarealpayfee a,sacmain b,sapmain c,sapolicyuploadplatformlog d,sacitemcar e WHERE a.policyno = b.policyno(+) and a.policyno = e.policyno(+) and a.certino = c.endorseno(+) and a.certino = d.certino and a.agentCode is not null and nvl(d.uploadFlag,0) in ('0','1') and a.accountno = '2120151103445' and a.riskCode in ('0332','0335') and nvl(e.usenaturecode,0) not in ('309009','309008','301006001','301006002') and nvl(a.chagFlag,0) <> '2' and (d.settleno is null or d.settleno = '2120151103445')

原文链接:https://www.f2er.com/oracle/213389.html

猜你在找的Oracle相关文章