- if (substring(@pspt_id,1,1)*7+
- substring(@pspt_id,2,1)*9+
- substring(@pspt_id,3,1)*10+
- substring(@pspt_id,4,1)*5+
- substring(@pspt_id,5,1)*8+
- substring(@pspt_id,6,1)*4+
- substring(@pspt_id,7,1)*2+
- substring(@pspt_id,8,1)*1+
- substring(@pspt_id,9,1)*6+
- substring(@pspt_id,10,1)*3+
- substring(@pspt_id,11,1)*7+
- substring(@pspt_id,12,1)*9+
- substring(@pspt_id,13,1)*10+
- substring(@pspt_id,14,1)*5+
- substring(@pspt_id,15,1)*8+
- substring(@pspt_id,16,1)*4+
- substring(@pspt_id,17,1)*2
- )%11 <> (
- case
- when substring(@pspt_id,18,1)='1' then '0'
- when substring(@pspt_id,18,1)='0' then '1'
- when substring(@pspt_id,18,1) in ('X','x') then '2'
- when substring(@pspt_id,18,1)='9' then '3'
- when substring(@pspt_id,18,1)='8' then '4'
- when substring(@pspt_id,18,1)='7' then '5'
- when substring(@pspt_id,18,1)='6' then '6'
- when substring(@pspt_id,18,1)='5' then '7'
- when substring(@pspt_id,18,1)='4' then '8'
- when substring(@pspt_id,18,1)='3' then '9'
- when substring(@pspt_id,18,1)='2' then '10'
- end
- )
- return -1
来源: http://www.bubuko.com/infodetail-3062399.html