计算 2 个日期之间的天数、接受开始日期和结束日期,然后返回该时间段内涵盖的天数的函数



我必须做类似的事情,我还需要将文件假脱机到css

CREATE OR REPLACE FUNCTION NumberOfDays
(in_date IN DATE)
RETURN NUMBER
IS
days NUMBER;
BEGIN
days:= TRUNC(SYSDATE - in_date);
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUT_LINE(SQLERRM);
END;
/

您的示例代码几乎就在那里。您只需要添加第二个in参数。此外,您需要return结果,以便它返回到调用方。最后,不需要中间变量。您可以计算并立即返回。

create or replace function number_of_days(start_date in date, end_date in date)
return number
is
begin
return trunc(end_date - start_date);
exception
when others then
dbms_output.put_line(sqlerrm);
end;
/

然后你可以做:

select number_of_days(date '2020-06-01', date '2020-06-06') res from dual

收益 率:

|RES | |--: | |  5 |

最新更新