mysql通过身份证号码获取年龄,通过出生年月获取年龄

一 根据出生年月获取年龄

TIMESTAMPDIFF(YEAR, birthday, CURDATE()) age,

TIMESTAMPDIFF函数,有参数设置,可以精确到年 (YEAR) 和 天(DAY)、小时(HOUR),分钟(MINUTE)和秒(SECOND)用来获取时间差

CURDATE() 函数返回当前的日期
mysql通过身份证号码获取年龄,通过出生年月获取年龄_第1张图片

 SELECT TIMESTAMPDIFF(YEAR, '1995-08-25', CURDATE()) age

用来获取年龄
mysql通过身份证号码获取年龄,通过出生年月获取年龄_第2张图片

二 根据身份证号码获取年龄

(substring(now(),1,4)-substring(idcard,7,4))-(substring(idcard,11,4)-date_format(now(),'%m%d')>0) age,

substring()函数从特定位置开始的字符串返回一个给定长度的子字符串。 MySQL提供了各种形式的子串功能.
通过截取身份证号码以此来获得年龄
在这里插入图片描述

你可能感兴趣的:(mysql)