Oracle 中循环遍历某张表,并对符合条件的进行Update操作
发布时间:2020-12-12 15:16:41 所属栏目:百科 来源:网络整理
导读:BEGINFOR L_RECORD IN (select RECORD_ID,CURR_PERIOD,PERIOD_START_DATE,(sysdate- PERIOD_START_DATE) diffTime,(P.PERIOD_END_DAY-P.PERIOD_BEGIN_DAY) periodDiffDay from CPS_PATIENT_PATH_RECORD t1inner join cps_treat_period p on p.Period_Id=t1.C
BEGIN FOR L_RECORD IN (select RECORD_ID,CURR_PERIOD,PERIOD_START_DATE,(sysdate- PERIOD_START_DATE) diffTime,(P.PERIOD_END_DAY-P.PERIOD_BEGIN_DAY) periodDiffDay from CPS_PATIENT_PATH_RECORD t1 inner join cps_treat_period p on p.Period_Id=t1.Curr_Period where t1.path_state=1) LOOP IF (L_RECORD.DIFFTIME >=L_RECORD.periodDiffDay) THEN UPDATE CPS_PATIENT_PATH_RECORD SET PERIOD_START_DATE=to_date(to_char(sysdate,'YYYY/MM/DD'),CURR_PERIOD =L_RECORD.CURR_PERIOD+1 WHERE RECORD_ID=L_RECORD.RECORD_ID; END IF; END LOOP; END; 格式: FOR record IN (SELECT) LOOP UPDATE T WHERE END LOOP (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |