gpt4 book ai didi

sql - 使用 SQL Server 根据系统日期和出生日期计算年龄

转载 作者:行者123 更新时间:2023-12-03 01:56:01 25 4
gpt4 key购买 nike

Possible Duplicate:
How to calculate age in T-SQL with years, months, and days

我只是想使用出生日期变量计算年龄(以年为单位)

1932-04-29 00:00:00.000

和 SQL Server 中的 SYSDATETIME( ),其中

SELECT year(Sysdatetime() - Birthdate) as Age

产生(令人惊讶):1980

我错过了什么?我预计会得到 80!

最佳答案

计算年龄并不像乍看起来那么简单。

如果您使用Datediff,您会得到绝对年份的差异,这不是年龄。

例如

select DATEDIFF(yy, '1980-12-31', getdate())

将返回 32,而相关人员的年龄为 31。

这对于您的目的来说可能足够准确。比较准确,但还是错误,可以使用

select convert(int,DATEDIFF(d, '1933-10-31', getdate())/365.25)

大多数时候都是正确的。

或者你可以编写一个更复杂的函数......

关于sql - 使用 SQL Server 根据系统日期和出生日期计算年龄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13161401/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com