我怎样才能用 pl/sql 或 sql 格式获取出生日期的人的年龄?



这是我的表。

create table ator(
numero_identidade varchar2(10) NOT NULL,
numero_ss varchar2(20) NOT NULL,
dt_nascimento date NOT NULL,
nacionalidade varchar2(20) NOT NULL,
nome_artistico varchar2(40),
sexo char(1) NOT NULL,
idade number(2,0) NOT NULL,
primary key (numero_identidade),
CONSTRAINT sexo_a check (sexo = 'F' or sexo = 'M'));


SELECT DATEDIFF(idade,GETDATE())/8766 AS AgeYearsIntTrunc

我在互联网上看到过这个命令,但我不明白如何使用它。

我该怎么做??

如果您使用的是Oracle DBMS,请尝试:

SELECT TRUNC(MONTHS_BETWEEN(SYSDATE, dt_nascimento)/12) AS idade FROM your_table

这是你看到的:

> DATEDIFF(hour,idade,GETDATE())/8766 AS AgeYearsIntTrunc

它将小时差除以一年中的小时数:365.25*24 = 8766。 这意味着您最终的年龄以年为单位。 希望这有帮助。 . 试试吧

select DATEDIFF(hour,idade,GETDATE())/8766 AS AgeYearsIntTrunc
from ator

最新更新