Oracle使用存储函数从身份证中提取性别
CREATE OR REPLACE FUNCTION XINGBIE(CARD VARCHAR2) RETURN VARCHAR2 IS XB VARCHAR2(3); BEGIN SELECT DECODE(MOD(TO_NUMBER(SUBSTR(REPLACE(CARD, ' ', ''), 17, 1)), 2), 0, '女', '男') INTO XB FROM DUAL; RETURN XB; EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('异常:'); DBMS_OUTPUT.PUT_LINE(SQLCODE || SQLERRM); RETURN ''; END; --调用函数 SELECT xingbie('610528200211202416') FROM dual

浙公网安备 33010602011771号