如下:
用:is null、is not null來判斷處理 如下: create procedure xxx(AAA in varchar2) as begin if AAA is null then --sql else --sql end if; end xxx;
其他判斷的幾個參考:
SELECT COUNT(*) INTO V_V_COUNT FROM PROJ_REPORT_INFO WHERE PROJID = V_P_PROJID AND REPORTTYPE = 'FIRST_REPORT'; IF (V_V_COUNT > 0) THEN SELECT REPORTID INTO V_REPORTID FROM PROJ_REPORT_INFO WHERE PROJID = V_P_PROJID AND REPORTTYPE = 'FIRST_REPORT'; END IF;
nvl的使用參考:
NVL(X1,X2) --//如果X1不為空,返回x1;否則返回X2;(如 : NVL(ename, 'null'))
--查詢是否關聯企業,有值就顯示原有的值,否則就是1,1代表是關聯企業的, --用sum是為了如果沒有值就顯示為空,為空就賦值 為1 SELECT nvl(sum(EXINFOVALUE),1) INTO V_ISRELATEDTOCORPCOUNT FROM PROJ_EXINFO WHERE PROJID = V_PROJSERIALID_IN AND EXINFOCODE='isrelatedToCorp'; --如果是自然人(2)且沒有關聯企業(0-否),只檢測項目基本信息是否填寫,其他都不用檢測 IF V_ISRELATEDTOCORPCOUNT = '0' AND V_CUSTOMERTYPE = '2' THEN BEGIN IF V_APPLYMONEY > 0 AND V_LOANBANKID IS NOT NULL THEN BEGIN V_RECODE_OUT := '1'; END; ELSE BEGIN V_RECODE_OUT := '-2'; END; END IF; END; END IF;
END;