将天数转换为日期

Convert a number of day into a date

是否可以将一年中的某一天转换为日期?

例如,在 oracle 中我可以通过以下方式获取年中的第几天:

Select to_char(sysdate,'ddd') as "y_num_day" from dual;

我需要反向执行一些日期运算。

要将其转换回日期,请使用 to_date

select to_date(to_char(sysdate,'ddd'),'ddd') as "date" from dual

List of valid parameters for to_date

你也可以加上它回到年份开始日期,像这样

with a as ( Select to_char(sysdate,'ddd') y_num_day from dual )

select trunc(sysdate,'year') + to_number(a.y_num_day) - 1 from a