下载鸥 > 网站下载 > 开发教程 > Mysql数据库

MySQL怎样通过身份证号码计算用户年龄?

545 2021-04-24 16:49:17

收藏
MySQL怎样通过身份证号码计算用户年龄?
实名制站点往往需要用到身份证号码,有了身份证号码就需要获取用户年纪或做展示,或做数据分析。那么,我们怎样通过身份证号码计算用户年龄呢?

MySQL怎样通过身份证号码计算用户年龄?

身份证号码计算年龄的思考

一般说来,身份证号码是18位数和15位数,比较老的身份证号码是15位的,而年轻人的身份证号码是18位。我们既要考虑18位身份证号码如何计算年龄,也同样要考虑15位的身份证号码如何计算年龄。
 

身份证号码计算年龄方法

1、if判断身份证号码是18位还是15位

MySQL的if语法比较像JAVA里的三元表达式

IF(条件,条件为true执行,条件为false执行)

MySQL的字符串长度获取方法

CHAR_LENGTH(字符串)

2、18位身份证和15位身份证的计算方式
18位数身份证的第7-10位数是出生年份,第11-14位数是出生月日。

18位身份证计算年龄
substring(now(),1,4)-substring(idcard,7,4))-(substring(idcard,11,4)-date_format(now(),'%m%d')>0

15位数身份证的第7-8位数是出生年份,但是少了两位。15位数身份证把1930就简化成30少了前面的19,并且15位身份证全部都在19XX年颁发,第9-12位数是出生月日,

15位身份证的年龄计算
substring(now(),1,4)-(1900+substring(idcard,7,2)))-(substring(idcard,9,4)-date_format(now(),'%m%d')>0

3、最终的sql语句
select 
id,
if (CHAR_LENGTH(idcard)<18,(substring(now(),1,4)-(1900+substring(idcard,7,2)))-(substring(idcard,9,4)-date_format(now(),'%m%d')>0),(substring(now(),1,4)-substring(idcard,7,4))-(substring(idcard,11,4)-date_format(now(),'%m%d')>0)) as age,
idcard
from t_table;

这样,我们就通过MySQL顺利计算出了用户的年纪。

本文地址:https://xzo.com.cn/develop/mysql/842.html

有帮助,很赞!

信息来源:精准像素
导出教程 下载word版教程
发表评论 共有条评论
关于Mysql数据库


MySQL是一款安全、跨平台、高效的,并与 PHP、Java 等主流编程语言紧密结合的数据库系统。该数据库系统是由瑞典的 MySQL AB 公司开发、发布并支持,由 MySQL 的初始开发人员 David Axmark 和 Michael Monty Widenius 于 1995 年建立的。

推荐Mysql数据库开发教程
什么是SQL注入?如何防注入?
什么是SQL注入?如何防注入?

简言之,SQL是一种结构化查询语言,使我们有能力访问和操作数据库。一些黑客便...

9 469
怎样让Mysql支持emoji和符号表情?
怎样让Mysql支持emoji和符号表情?

emoji表情在当下已经十分流行,微信名中使用了emoji表情包的也大有人在。我们...

16 765
怎样用phpMyAdmin批量导入Excel内容到MySQL数据库?
怎样用phpMyAdmin批量导入Excel内容到MySQL数据库?

近期,有客户需要将excel数据导入到MySQL数据库,这是一个比较常用的功能,操作起...

12 609
MySQL索引介绍
MySQL索引介绍

MySQL索引的建立对于MySQL的高效运行是很重要的,索引可以大大提高MySQL的检...

29 616
MySQL怎样通过身份证号码计算用户年龄?
MySQL怎样通过身份证号码计算用户年龄?

实名制站点往往需要用到身份证号码,有了身份证号码就需要获取用户年纪或做展...

1 544
MySQL数据库误删除了要怎么恢复?
MySQL数据库误删除了要怎么恢复?

MySQL误删除这种事出现的概率不高,但如果哪天误删除了,总不能真的跑路吧?那么,M...

0 421
MySQL查找字符串FIND_IN_SET()函数介绍
MySQL查找字符串FIND_IN_SET()函数介绍

FIND_IN_SET()是一个MySQL函数,通过使用本函数,我们可以返回指定字符串在以逗...

0 328
textarea带换行存入mysql数据库的方案(php/js)
textarea带换行存入mysql数据库的方案(php/js)

textarea输入框如果带有换行符,在存入数据库时需要将换行符\n转换为<br>,在...

0 487
推荐插件
帝国cms智能自动审核按星期几审核指定栏目带推送插件
帝国cms智能自动审核按星期几审核指定栏目带推送插件

采集站的必备资源是自动审核,要做到日收录也离不开定时发布。而本插件的自动...

0 1218
帝国cms百度文字识别ocr接口对接插件
帝国cms百度文字识别ocr接口对接插件

许多网站会做一些小功能小插件给客户使用以增强用户黏性,比如图片转文字,这种...

0 424
帝国cms在线考试系统模板插件
帝国cms在线考试系统模板插件

一直没看到好用的帝国cms在线考试插件,所以自己开发了一款。在线考试插件用...

0 1227
帝国cms联想词搜索高级搜索插件下载
帝国cms联想词搜索高级搜索插件下载

帝国CMS自带的搜索功能虽然强大,但也有很强的局限性 -- 必须关键词完全匹配...

0 699
帝国cms批量添加后台用户插件
帝国cms批量添加后台用户插件

使用帝国cms的企业用户、新闻资讯类站点的用户很多,此类站点很多时候需要有...

0 644
帝国cms访问统计ip地址链接与封禁插件下载
帝国cms访问统计ip地址链接与封禁插件下载

下载鸥开发了这款帝国cms封禁ip插件,自动记录访问情况,让我们可以更快的识别...

0 936
帝国cms百度、必应bing、神马推送增强收录三合一插件
帝国cms百度、必应bing、神马推送增强收录三合一插件

因客户需要一键推送到多平台,下载鸥开发了这款一键推送至百度、必应、神马插...

0 96
帝国cms自动生成文章新闻目录插件下载
帝国cms自动生成文章新闻目录插件下载

用户体验是我们的需求,百度蜘蛛的认可更是我们的需求。毕竟,没有收录排名,何来...

0 1078
客服QQ:341553759
扫码咨询 常见问题 >
官方交流群:90432500
点击加入