如何根据NLS_DATE_FORMAT中的当前系统时间获取年龄? (甲骨文 SQL)
How do i get an age according to the current system time in NLS_DATE_FORMAT? (Oracle SQL)
我有一个叫table的人,我如何根据NLS_DATE_FORMAT的当前系统时间得到一个人的年龄?
ALTER SESSION SET NLS_DATE_FORMAT = 'DD.MM.YYYY';
CREATE TABLE person (
person_id NUMBER (9),
birthday DATE CONSTRAINT nn_person_birthday NOT NULL,
...
);
注意:我只想要确切的年龄,而不是月份或日期。示例年龄:43
注意 2:我在 table 中这样插入生日:TO_DATE('17.05.2003','DD.MM.YYYY')
日期格式无关紧要。我会建议:
floor(months_between(sysdate, p.birthday) / 12)
我有一个叫table的人,我如何根据NLS_DATE_FORMAT的当前系统时间得到一个人的年龄?
ALTER SESSION SET NLS_DATE_FORMAT = 'DD.MM.YYYY';
CREATE TABLE person (
person_id NUMBER (9),
birthday DATE CONSTRAINT nn_person_birthday NOT NULL,
...
);
注意:我只想要确切的年龄,而不是月份或日期。示例年龄:43
注意 2:我在 table 中这样插入生日:TO_DATE('17.05.2003','DD.MM.YYYY')
日期格式无关紧要。我会建议:
floor(months_between(sysdate, p.birthday) / 12)