计算EAN-13商品条码校验位的SQL函数
来源:互联网 发布:sql distinct * 用法 编辑:程序博客网 时间:2024/04/25 21:11
近日有一位网友问到EAN-13码的校验位计算问题(http://topic.csdn.net/u/20120426/23/7d6dfd64-ca7a-494e-8d34-c6da501b6046.html),因为之前工作中也遇到过类似的问题,写了一个函数,供大家参考:
EAN-13商品条码中的校验符的作用是检验前面12个数字是否正确,在条码机每次读入数据时,都会计算一次数据符的校验并与校验符进行比对。
校验符的计算方法:
将12个数据符从左起将所有的奇数位相加得出一个数a,
将所有的偶数位相加得出一个数b,
然后将数b乘以3再与a相加得到数c,
用10减去数c的个位数,
如果结果不为10则检验符为结果本身,如果为10则检验符为0
根据以上规则,使用SQL写一个简单的函数如下:
/** --功能:获取EAN-13码的检验位 --Author:josy(百年树人) --参数@s:EAN-13码前12位**/create function EAN13(@s char(12))returns varchar(1)asbegin return (10-( (cast(substring(@s,2,1) as int)+substring(@s,4,1)+substring(@s,6,1) +substring(@s,8,1)+substring(@s,10,1)+substring(@s,12,1) )*3 +substring(@s,1,1)+substring(@s,3,1)+substring(@s,5,1) +substring(@s,7,1)+substring(@s,9,1)+substring(@s,11,1) )%10)%10 endgoselect dbo.ean13('690102807501')/**----5(1 行受影响)**/
- 计算EAN-13商品条码校验位的SQL函数
- 计算EAN-13校验位
- sql,EAN-13位条码,存储过程
- 商品ean码或者条码的申请系统
- EAN码校验位的计算方法
- EAN-13条码
- EAN-13 条码生成
- EAN-13条码算法
- EAN-13编码的校验位计算方法,以JS为例
- SQL 计算条码校验位,输出1 则校验位正确,0,不正确
- Barcode-EAN 13码生成校验位
- 基于MATLAB的EAN-13条码识别系统
- 计算MEID校验位的算法函数
- 计算IMEI校验位的算法函数
- EAN13条码的校验位的Excel算法
- 计算IMEI号的校验位
- 计算验证条形码(Ean-13码)
- 得到条形码的校验位函数
- 预处理中的宏替换
- [IT幽默]老婆软件升级后的烦恼
- 银行账户(作业题)
- C#委托及事件
- 1207
- 计算EAN-13商品条码校验位的SQL函数
- java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.FilterDispathcher
- Request && Response
- SharePoint Server2007 的配置以及“未能创建配置数据库”的解决方法
- Linux系统管理命令
- VC++6.0调试:Watch窗口的使用
- 设置对话框、static和group的背景色和字体颜色
- 策略模式Strategy(对象行为型)
- 如何做好正式交付使用前的项目演示