SQL根据出生日期计算年龄年月日周

3,032次阅读
没有评论

没有什么技术含量但是复制粘贴总是好的,基本一看就懂,替换时间就行了,在 oracle 里测试可用。非要填个大于当前时间的日期,当我没说告辞

select 
       case
         when  substr(to_char(sysdate,'yyyymmdd'),0,4) - substr('20200613',0,4)>0 then
           substr(to_char(sysdate,'yyyymmdd'),0,4) - substr('20200613',0,4) || '岁'
         when  substr(to_char(sysdate,'yyyymmdd'),5,2) - substr('20200613',5,2)>0 then
          substr(to_char(sysdate,'yyyymmdd'),5,2) - substr('20200613',5,2) || '月'
         when  substr(to_char(sysdate,'yyyymmdd'),7,2) - substr('20200613',7,2)>6 then
        to_number(to_number( substr(to_char(sysdate,'yyyymmdd'),7,2) - substr('20200613',7,2))/7) || '周'
         else
          substr(to_char(sysdate,'yyyymmdd'),7,2) - substr('20200613',7,2) || '天'
       end as Age
  from dual

正文完
 0
Rioad
版权声明:本站原创文章,由 Rioad 于2020-06-13发表,共计605字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)
验证码