【问题标题】:Finding age using sql query [duplicate]使用sql查询查找年龄[重复]
【发布时间】:2013-11-19 13:46:53
【问题描述】:

假设我有一个字段 DOB,其中存储了员工的出生日期。

是否有查询员工的年龄

我想要的输出是

EmpNo     Age
1          30

我正在使用 MySQL

【问题讨论】:

标签: mysql sql


【解决方案1】:

如果你只想要一年而不担心几个月

SELECT EmpNo, DATEDIFF(YEAR, DOBFIELD, GETDATE()) As Age From Table

对不起,我给了 MSSQL 版本

试试

SELECT EmpNo, FLOOR(DATEDIFF(GETDATE(),DOBFIELD)/365) Age From Table

【讨论】:

  • 显示此错误Incorrect parameter count in the call to native function 'DATEDIFF'
  • 这个查询有效 SELECT eno` , TIMESTAMPDIFF( YEAR, dob , CURDATE( ) ) AS age FROM `employee``
【解决方案2】:

DATEDIFF(day,DOB,GETDATE())/365.242199)

最好将它放入一个函数中。希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多