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,beginendbeginend可以为DATE或DATETIME类型,并且可允许参数为混合类型。

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

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

select timestampdiff(year,CURRENT_DATE,birthday)

posted @   菜鸟辉哥  阅读(1391)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示