关键词
MySQL SQL 函数
摘要
本文介绍MySQL数据库中,有一个生日字段,怎么通过这个生日字段来得到年龄大小。这里将会使用了MySQL日期处理函数。
本文介绍MySQL数据库中,有一个生日字段,怎么通过这个生日字段来得到年龄大小。这里将会使用了MySQL日期处理函数。
先看看当前表中的信息:
mysql> select t_name,t_birth from test;
+——–+————+
| t_name | t_birth |
+——–+————+
| name1 | 1990-01-01 |
| name2 | 2013-01-01 |
+——–+————+
2 rows in set (0.00 sec)
从这个查询结果可以看出,name1这条记录的出生日期是1990-01-01,那下面我们来计算一下它的年龄。
mysql> SELECT t_name, t_birth, CURDATE(), (YEAR(CURDATE())-YEAR(t_birth))-(RIGHT(CURDATE(),5)
+——–+————+————+——+
| t_name | t_birth | CURDATE() | age |
+——–+————+————+——+
| name1 | 1990-01-01 | 2013-09-27 | 23 |
| name2 | 2013-01-01 | 2013-09-27 | 0 |
+——–+————+————+——+
2 rows in set (0.09 sec)
此处,YEAR()提取日期的年部分,RIGHT()提取日期的MM-DD (日历年)部分的最右面5个字符。比较MM-DD值的表达式部分的值一般为1或0,如果CURDATE()的年比birth的年早,则年份应减去1。整个表达式有些难懂,使用alias (age)来使输出的列标记更有意义。
好了,年龄已经计算出来了。
关于MySQL中根据生日计算年龄的SQL语句日期函数,本文就介绍这么多,希望对大家有所帮助,谢谢!