UPDATE 员工表 SET 身份证号=
SUBSTRING(身份证号,1,6)+'18'+SUBSTRING(身份证号,7,9)+
SUBSTRING('10X98765432',
(
CAST(SUBSTRING(身份证号, 1,1) AS INT)*7
+CAST(SUBSTRING(身份证号, 2,1) AS INT)*9
+CAST(SUBSTRING(身份证号, 3,1) AS INT)*10
+CAST(SUBSTRING(身份证号, 4,1) AS INT)*5
+CAST(SUBSTRING(身份证号, 5,1) AS INT)*8
+CAST(SUBSTRING(身份证号, 6,1) AS INT)*4
+1*2
+8*1
+CAST(SUBSTRING(身份证号, 7,1) AS INT)*6
+CAST(SUBSTRING(身份证号, 8,1) AS INT)*3
+CAST(SUBSTRING(身份证号, 9,1) AS INT)*7
+CAST(SUBSTRING(身份证号,10,1) AS INT)*9
+CAST(SUBSTRING(身份证号,11,1) AS INT)*10
+CAST(SUBSTRING(身份证号,12,1) AS INT)*5
+CAST(SUBSTRING(身份证号,13,1) AS INT)*8
+CAST(SUBSTRING(身份证号,14,1) AS INT)*4
+CAST(SUBSTRING(身份证号,15,1) AS INT)*2
)
% 11 + 1, 1)
WHERE LEN(身份证号)=15 AND SUBSTRING(身份证号,13,3) IN ('999','998','997','996')
-- 15位身份证号升级为18位,适用于19xx年出生的公民
UPDATE 员工表 SET 身份证号=
SUBSTRING(身份证号,1,6)+'19'+SUBSTRING(身份证号,7,9)+
SUBSTRING('10X98765432',
(
CAST(SUBSTRING(身份证号, 1,1) AS INT)*7
+CAST(SUBSTRING(身份证号, 2,1) AS INT)*9
+CAST(SUBSTRING(身份证号, 3,1) AS INT)*10
+CAST(SUBSTRING(身份证号, 4,1) AS INT)*5
+CAST(SUBSTRING(身份证号, 5,1) AS INT)*8
+CAST(SUBSTRING(身份证号, 6,1) AS INT)*4
+1*2
+9*1
+CAST(SUBSTRING(身份证号, 7,1) AS INT)*6
+CAST(SUBSTRING(身份证号, 8,1) AS INT)*3
+CAST(SUBSTRING(身份证号, 9,1) AS INT)*7
+CAST(SUBSTRING(身份证号,10,1) AS INT)*9
+CAST(SUBSTRING(身份证号,11,1) AS INT)*10
+CAST(SUBSTRING(身份证号,12,1) AS INT)*5
+CAST(SUBSTRING(身份证号,13,1) AS INT)*8
+CAST(SUBSTRING(身份证号,14,1) AS INT)*4
+CAST(SUBSTRING(身份证号,15,1) AS INT)*2
)
% 11 + 1, 1)
WHERE LEN(身份证号)=15 AND SUBSTRING(身份证号,13,3) NOT IN ('999','998','997','996')
分享到:
相关推荐
巧用SQL语句解决身份证号15位批量升级18位问题.pdf
sql 语句 根据身份证号计算年龄,oracl数据库可以直接运行
1、可以通过语句对SQL server数据库中现有的身份证号进行验证,并把验证结果更新到某一列; 2、可以识别特殊字符、汉字、空格、位数不对等情况; 3、通过程序集和手动执行的sql,一般半小时内可以分析100万身份证...
做数据录入的最关心身份证信息的合法性,如果是错误的录入也无用,本文件的功能就是做5位和18位公民身份证校验。
通过身份证号前6位查询全国各省各市划分,sql语句可以直接导入数据库,自用测试,对应的省市都是没问题的
全国各地行政区划代码及身份证号前6位查询,导入数据库的sql语句,粘贴复制直接搞定
整理后的身份证前6位匹配户籍地址对应的数据地区sql脚本
通过身份证号前6位查询全国各省各市各县划分,sql语句可以直接导入数据库,自用测试,对应的省市县都是没问题的
根据身份证前6位获取归属地sql mysql 数据库,包含建表和数据
根据身份证号前2,4,6位查询用户归属地,全国各地市的编码表,各地市编码对应表,sql文件,方便查询使用。
全面的sql语句sql语句大全sql语句大全sql语句大全sql语句大全sql语句大全sql语句大全sql语句大全sql语句大全sql语句大全
sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句sql注入语句...
sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明...
适用于OA项目中这些对档案的管理 1、根据身份证号码计算出生日期、年龄、性别(18位) 代码如下: //获取输入身份证号码 var UUserCard = $(“#UUserCard”).val(); //获取出生日期 //UUserCard.substring(6, 10) + ...
sql语句命令sql语句命令sql语句命令sql语句命令sql语句命令sql语句命令
Oracle Sql语句转换成Mysql Sql语句java 源码,非常简单,只要给定源oracle sql语句地址,和生成目标文件地址运行即可。
精妙SQL语句精妙SQL语句精妙SQL语句精妙SQL语句精妙SQL语句
可是实现SQL的自动生成,再也不用为调式SQL语句错误而烦恼了!
sql语句sql语句sql语句
最全的身份证前6位代码数据库sql,建立了一张areas表,包含父级id字段