首 页 开发联盟 开发培训 下载中心 相关教程 点击排行 留言 开发手册
 
用户名:     密 码:     验证码:   
 
宏达软件开发网 > 文章中心 > 系统资料 >
通过身份证计算出生年月及年龄←身份证,计算,出生年月,年龄

通过身份证计算出生年月及年龄
发布时间: 2010/3/2 13:55:00
1.由身份证得到出生年月
//说明:通过对身份证号码的解析得到出生年月
 //版本:通用
select right(left(':身份证',10),4) & '-' & right(left(':身份证',12),2)& '-' & right(left(':身份证',14),2) as 出生日期(这个出生年月是日期型的) 
select right(left(':身份证',14),8) as 出生日期(这个出生年月是文本型的)
 
2.输入身份证号码之后如何自动计算并在年龄栏自动填写好年龄,(现在的身份证存在15位和18位两种)

18位:Year(Date())-Mid([身份证编号],7,4)+1
15位:Year(Date())-(1900+Mid([身份证编号],7,4))+1
UPDATE A:SET 年龄= Year(Date())-Mid([身份证编号],7,4)+1 WHERE len(身份证编号)=18, 这个SQL语句的位置可以放置在多个地方,放在数据增强处理中比较合适。

3.根据出生日期计算年龄

 //版本:单机版 

select datediff('yyyy',出生日期,date()) as 年龄 from 戒毒人员信息档案(算周岁) 
select datediff('yyyy',出生日期,date())+1 as 年龄 from 戒毒人员信息档案(算虚岁)

datediff(‘yyyy’,出生日期,date())

相关知识:如果要计算两个日期(时间)的差值,可以利用 datediff("标识",起始日期,

      截止日期) 函数来实现,其中标识有:yyyy  年;m 月;d 日;h 小时;n 分

      钟;s 秒

          如果要计算差多少天,就是datediff("d",起始日期,截止日期);计算差多少小 

          时,就是 datediff("h",起始日期,截止日期)

          如果要在现有日期和时间的基础上增加的话,可以利用dateadd("标识",数量,

         日期),标识同datediff()函数。要在当天的基础上增加5天,就是dateadd("d",5,date())

26772728
上一篇:关于记录验证下一篇:利用脚本功能计算折扣率
关于我们 | 联系方式 | 合作方式 | 相关条款 | 常见问题
公司地址:山东省聊城市振兴路西路18号楼     邮政编码:252000    客服电话:0635-8386265
版权所有:HONGDA SOFTWARE    宏达软件     鲁ICP备09000001号