sql从身份证中取出出生日期

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql从身份证中取出出生日期相关的知识,希望对你有一定的参考价值。

以oracle为例:假设你的tb_csm_individual表里面CERTIFICATE_CODE字段存着身份证号:
select
to_date(substr(CERTIFICATE_CODE,7,8),'%yyyy%mm%dd')
from
tb_csm_individual
where
CERTIFICATE_CODE='210102197908223722'
;这样就查出来了这个身份证号的出生日期;
下面的脚本就是计算当前日期减去出生日期求出来的生日
select
EXTRACT(year
FROM
to_date('2018-11-22','yyyy-mm-dd'))
-
EXTRACT(year
FROM
to_date(substr(CERTIFICATE_CODE,7,8),'yyyy-mm-dd'))
years
from
tb_csm_individual
where
CERTIFICATE_CODE='210102197908223722';
至于剩下的年龄区间楼主自己应该知道怎么求了把
参考技术A 根据身份证号验证出生日期:
alter
table
你的表--修改表
/*添加约束
要么删掉你之前的生日约束
要么把
约束开始到结束复制到你的约束里再改*/
add
constraint
ck_生日
check(
--约束开始
convert(datetime,replace(stuff(stuff(right
(left(char之类类型的18位的身份证号,14),8),5,0,'-'),8,0,'-'),'0',''))=生日字段
--约束结束
)
最后只要把中文替换掉就可以了本回答被提问者采纳

以上是关于sql从身份证中取出出生日期的主要内容,如果未能解决你的问题,请参考以下文章

sql 从身份证中自动获取出生日期,显示格式为XXXX-XX-XX

EXCEL表格中 怎么用函数从身份证号获取出生日期,年龄、性别

如何在JS中解析身份证号码得到出生日期

如何在数据库中利用sql从18位身份证号中截取出生日期,身份证号在reader表中

SQL 中身份证编码与出生日期验证

excel 中把身份证号转换成年龄和出生日期的公式是啥?