mysql 使用SQL语句,根据数据库生日字段计算用户年龄

1.第一种

select 表名.*, ROUND(DATEDIFF(CURDATE(), birthday)/365.2422) as age  from userinfo

其中DATEDIFF() 函数用来计算两个参数间的相差天数
CURDATE()是返回“YY-MM-DD”格式的当前日期
birthday是以“YY-MM-DD”这个格式存储的生日日期
得到相差天数之后再做一个除以365.2422天
如果要求整数的话就多加个ROUND()

2.第二种
时间差函数:timestampdiff
MySQL

  语法:  timestampdiff(unit,begin,end)
  begin和end可以为DATE或DATETIME类型,并且可允许参数为混合类型。

unit参数是确定(end-begin)时间差的单位

单位 UNIT对应
毫秒
second
分钟 minute
小时 hour
day
week
month
quarter
year
例子:根据birthday字段计算年龄:

select timestampdiff(year,CURRENT_DATE,birthday)

posted @ 2022-05-19 09:25  菜鸟辉哥  阅读(1448)  评论(0)    收藏  举报