python 自定义函数和循环_oracle自定义函数循环示例 | 工作 实践 真知 分享 IT python资源,python面试,python教程,python自学,python技术,python...

实际中用到的例子,有需要从中取精华查看吧 亲们

create or replace function FUN_STUCHECK(D VARCHAR2)

RETURN INTEGER

IS

V_ID varchar2(100);

V_SEXNAME varchar2(100);

V_AGE varchar2(100);

V_YBQK_SG varchar2(100);

V_YBQK_TZ number;

V_YBQK_YYZK varchar2(100);

V_YBQK_YYZK1 varchar2(100);

V_COUNT INTEGER;

begin

V_COUNT :=0;

FOR record1 in (select ID, SEXNAME,AGE,YBQK_SG,YBQK_TZ,YBQK_YYZK

FROM hlr_stuhealthcheck) loop

V_ID := record1.id;

V_SEXNAME := record1.sexname;

V_AGE := record1.age;

V_YBQK_SG := trunc(record1.ybqk_sg);

V_YBQK_TZ := to_number(record1.ybqk_tz);

V_YBQK_YYZK := record1.ybqk_yyzk;

V_YBQK_YYZK1 := 0;

FOR record2 in (select YYBL,JDTZ,ZCTZ,CZ,FP FROM stu_heighweight_standard

WHERE SEXNAME=V_SEXNAME AND AGE=V_AGE AND HEIGHT=V_YBQK_SG) LOOP

IF record2.YYBL is null THEN

V_YBQK_YYZK1:='0';

exit;

END IF;

IF V_YBQK_TZ < record2.YYBL THEN

V_YBQK_YYZK1:='1';

EXIT;

END IF;

IF V_YBQK_TZ <= record2.JDTZ THEN

V_YBQK_YYZK1:='2';

EXIT;

END IF;

IF V_YBQK_TZ <= record2.ZCTZ THEN

V_YBQK_YYZK1:='3';

EXIT;

END IF;

IF V_YBQK_TZ <= record2.CZ THEN

V_YBQK_YYZK1:='4';

EXIT;

END IF;

IF V_YBQK_TZ > record2.CZ THEN

V_YBQK_YYZK1:='5';

EXIT;

END IF;

END LOOP;

IF V_YBQK_YYZK1 = '0' OR V_YBQK_YYZK1<>V_YBQK_YYZK THEN

update hlr_stuhealthcheck set YBQK_YYZK = V_YBQK_YYZK1 where id=V_ID;

V_COUNT := V_COUNT + 1;

END IF;

end loop;

COMMIT;

RETURN (V_COUNT);

end FUN_STUCHECK;

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值