我正在使用 MySql 5.7.18-log
。
我有一个查询如下,输出结果为姓名和出生日期。
select uid,Name, Dob from table1;
数据:
uid Name Dob
K-1 Alex 1996-01-01 05:30:00
K-2 Mike 1983-05-26 05:30:00
K-3 Jim 1992-12-29 05:30:00
我想使用 Dob
列的年月提取年龄,并从当前年月中提取。
所需输出:
uid Name Dob Age
K-1 Alex 1996-01-01 05:30:00 25
K-2 Mike 1983-05-26 05:30:00 37
K-3 Jim 1992-12-29 05:30:00 28
答案 0 :(得分:2)
这是TIMESTAMPDIFF()
is your friend:
SELECT t.`uid`, t.`Name`, t.`Dob`,
TIMESTAMPDIFF(YEAR, t.`Dob`, CURDATE()) AS age
FROM `table1` t
这将始终返回一个四舍五入到最接近的整数的整数。