我FROM_DAYS
在 mysql 中使用函数时遇到问题,我想从 my_table 中获取年龄,这是我的查询;
select dob,CURRENT_DATE,
DATE_FORMAT(FROM_DAYS(DATEDIFF(CURRENT_DATE,dob)),'%y yr %c mth %e dy') AS age,
DATEDIFF(CURRENT_DATE,dob) days from my_table
结果:
dob || CURRENT_DATE || age || days ||
==========++==============++==================++=======++
1953-09-10|| 2013-09-12 || 60 yr 1 mth 3 dy || 21917 ||
2013-09-08|| 2013-09-12 || 00 yr 0 mth 0 dy || 4 ||
当我尝试FROM_DAYS(DATEDIFF(CURRENT_DATE,m.tgllahir))
第二行时,这就是结果0000-00-00
然后我尝试查看日期和时间函数并找到了这个
SELECT FROM_DAYS(730669);
-> '2007-07-03'
但是当我尝试这就是我得到的;
SELECT FROM_DAYS(730669);
-> '2000-07-03'
我很好奇为什么FROM_DAYS
功能不能正常工作,但我的主要问题是如何找到年龄?
编辑
在与 Barmar 讨论后,我知道我不能使用 FROM_DAYS 来获得准确的年龄,所以我试图找到不同的方法