/* Formatted on 2007/05/28 17:01 (Formatter Plus v4.8.7) */
declare
v_char varchar2(13);
v_result varchar2(10);
begin
v_char:='EC186409676CN';
SELECT
( 11
- MOD (( 8 * TO_NUMBER (SUBSTR (v_char, 3, 1))
+ 6 * TO_NUMBER (SUBSTR (v_char, 4, 1))
+ 4 * TO_NUMBER (SUBSTR (v_char, 5, 1))
+ 2 * TO_NUMBER (SUBSTR (v_char, 6, 1))
+ 3 * TO_NUMBER (SUBSTR (v_char, 7, 1))
+ 5 * TO_NUMBER (SUBSTR (v_char, 8, 1))
+ 9 * TO_NUMBER (SUBSTR (v_char, 9, 1))
+ 7 * TO_NUMBER (SUBSTR (v_char, 10, 1))
),
11
)
) RESULT
into v_result
FROM dual;
dbms_output.put_line('result'|| v_result);
end ;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/226700/viewspace-916555/ ,如需转载,请注明出处,否则将追究法律责任。