oracle存储过程通过生日计算年龄,自定义oracle版函数来计算年龄(规则一)

CREATE OR REPLACE FUNCTION uf_get_age(ad_csrq IN date, ad_dqrq IN date)

RETURN VARCHAR2 IS

RESULT   VARCHAR2(50);

n_months number;

n_days   number;

t_days   number(18,1);

d_dqrq   date;

s_nl     VARCHAR2(50);

s_ts     VARCHAR2(50);

BEGIN

Begin

IF ad_csrq is null OR ad_csrq <= TO_DATE('1900-1-1', 'YYYY-MM-DD') OR

ad_csrq > ad_dqrq THEN

RESULT := '';

RETURN(RESULT);

END IF;

IF ad_dqrq is null OR ad_dqrq <= TO_DATE('1900-1-1', 'YYYY-MM-DD') THEN

d_dqrq := SYSDATE;

ELSE

d_dqrq := ad_dqrq;

END IF;

-- 以实(周)岁 算*/

select to_number(to_char(d_dqrq, 'YYYY')) * 12 +

to_number(to_char(d_dqrq, 'MM')) -

(to_number(to_char(ad_csrq, 'YYYY')) * 12 +

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值