MySQL中根据出生日期计算年龄两种方法!
MySQL中根据出生日期计算年龄两种方法!
创建student表
1
2
3
4
5
6
|
mysql> create table student( -> sid int primary key comment '学生号' , -> sname varchar (20) comment '姓名' , -> birth DATE comment '生日' -> ); Query OK, 0 rows affected (0.01 sec) |
student表中插入数据
1
2
3
4
|
mysql> insert into student values (100, '张三' , '1999-12-12' ); Query OK, 1 row affected (0.00 sec) mysql> insert into student values (101, '李四' , '1996-8-15' ); Query OK, 1 row affected (0.01 sec) |
查询表中数据
1
|
mysql> select * from student; |
查询每个人的年龄
方法一:
curdate() 函数和 now() 函数的区别:
#在MySQL中,curdate( ) 和 now( ) 都是内置函数,用于获取日期和时间信息,但它们的返回值有所不同。
# curdate() 函数只返回当前日期部分,格式为'YYYY-MM-DD';
now()函数则会返回当前的日期和时间,格式为'YYYY-MM-DD HH:MM:SS'
#因此,curdate( ) 和 now( ) 的主要区别在于,curdate( ) 只返回日期,而 now( ) 返回日期和时间。
year( )函数:
#在MySQL中,year( curdate( ) )是一个函数调用,它的作用是从当前日期(由curdate()函数返回)中提取出年份部分。
#因此这个 year() 函数通常用于获取当前年份,或者在进行日期比较或处理时,只关心年份部分。
mysql> select sname,year(curdate())-year(birth) as 年龄 from student;
方法二:
date_format( now(), '%Y') 函数和 date_format( birth, '%Y')函数:
#在MySQL中,date_format(now(),'%Y') 和date_format(birth,'%Y')是两个函数调用,它们的作用是从当前日期(由now()函数返回)和birth日期中提取出年份部分。
# %Y是一个格式代码,表示四位数的年份。
# 所以,date_format(now(),'%Y')返回的是当前年份, date_format ( birth, '%Y')返回的是birth 日期的年份。
# date_format ( now(), '%Y') - date_format ( birth, '%Y')的结果就是当前年份减去 birth 日期的年份。这个表达式通常用于计算某人的年龄。
mysql> select sname,date_format(now(),'%Y')-date_format(birth,'%Y') as 年龄 from student;
附:mysql知道年龄求出生日期
下面是完整的代码示例,包括获取当前日期和年龄、计算出生日期和使用MySQL函数实现计算。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
-- 获取当前日期和年龄 SELECT CURDATE(); SELECT YEAR ( '2000-01-01' ); SELECT YEAR ( '2022-01-01' ) - YEAR ( '2000-01-01' ); -- 计算出生日期 SET @current_year = YEAR (CURDATE()); SET @age = 30; SET @birth_year = @current_year - @age; SET @birth_date = CONCAT(@birth_year, '-01-01' ); -- 使用MySQL函数实现计算 SET @ current_date = CURDATE(); SET @birth_date = DATE_SUB(@ current_date , INTERVAL @age YEAR ); |
总结
到此这篇关于MySQL中根据出生日期计算年龄两种方法的文章就介绍到这了。
学习资料见知识星球。
以上就是今天要分享的技巧,你学会了吗?若有什么问题,欢迎在下方留言。
快来试试吧,小琥 my21ke007。获取 1000个免费 Excel模板福利!
更多技巧, www.excelbook.cn
欢迎 加入 零售创新 知识星球,知识星球主要以数据分析、报告分享、数据工具讨论为主;
1、价值上万元的专业的PPT报告模板。
2、专业案例分析和解读笔记。
3、实用的Excel、Word、PPT技巧。
4、VIP讨论群,共享资源。
5、优惠的会员商品。
6、一次付费只需99元,即可下载本站文章涉及的文件和软件。
共有 0 条评论