oracle 的判断函数 计算函数 等函数的一个 实例sql语句

本文深入探讨了SQL查询中如何高效地转换数据字段,并利用日期比较实现业务逻辑判断。通过示例展示了如何使用DECODE、TO_DATE、TO_CHAR等函数进行数据处理,以及如何灵活运用ABS、SIGN等数学函数解决实际问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

select a.fFL     as FFL,
       a.fFLBa   as FFLBa,
       a.fMXL    as FMXL,
       a.fQY     as FQY,
       a.fKaJLXM as FKaJLXM,
       a.fYGa    as FYGa,
       a.fXSDD   as FXSDD,
       a.fCNRQ   as FCNRQ,
       a.fSJRQ   as FSJRQ,
       a.fBZ     as FBZ,
       a.fGLYD   as FGLYD,
       a.fSFYQ   as FSFYQ,
       a.fYQTS   as FYQTS,
      //下面这句 是 取实际时间 如果实际时间为空 就取系统时间 ,有值就取实际时间
      decode(a.fsjrq,null,sysdate,a.fsjrq) as aaaa,
      //用承诺日期-时间日期得到中间的相差天数
      a.fcnrq-to_date(to_caar(decode(a.fsjrq,null,sysdate,a.fsjrq),'yyyy-MM-dd'),'yyyy-MM-dd')

as jjjj,
      // 如果天数是大于的值取是否   小于取是  sign(值,返回条件,'真取值','假取值')
      decode(sign(a.fcnrq-to_date(to_char(decode(a.fsjrq,null,sysdate,a.fsjrq),'yyyy-MM-

dd'),'yyyy-MM-dd')),-1,'是','否') as bbbb,
      // 如果天数是大于的值取是0   小于取是相差天数   abs()函数 是取绝对值  所有负数变成正数
decode(sign(a.fcnrq-to_date(to_char(decode(a.fsjrq,null,sysdate,a.fsjrq),'yyyy-MM-dd'),'yyyy-MM

-dd')),1,'0', abs(a.fcnrq-to_date(to_char(decode(a.fsjrq,null,sysdate,a.fsjrq),'yyyy-MM-

dd'),'yyyy-MM-dd')))  as ccccc       
      from YT_CXDA_SJWa a
       waere 1 = 1
       and a.fCNRQ between to_date('2012-12-19', 'yyyy-mm-dd') and
       to_date('2014-12-19', 'yyyy-mm-dd')
       and ((a.fFLBa = 'C') or (a.fGLYD = 'C') or (a.fQY = ' '));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值