PL / SQL代码:创建一个函数get_return_date。

时间:2017-10-13 13:12:36

标签: sql oracle plsql

一个人今天租了一辆车7天。该功能将返回:日期+小时+分钟。提前致谢! :)

create or replace function get_return_date(
p_days in number)
return varchar2
is 
begin
return to_char(sysdate,'YYYY-MM-DD:HH24:MI') + p_days;
end;
/

2 个答案:

答案 0 :(得分:1)

之前的日期添加到字符串:

create or replace function get_return_date(
p_days in number)
return varchar2
is 
begin
    return to_char(sysdate + p_days,'YYYY-MM-DD:HH24:MI');
end;
/

答案 1 :(得分:0)

您的代码无效的原因是您需要在转换为字符串之前进行数学运算。从本质上讲,这就是您告诉编译器的内容:

  

"星期一" + 2

这在数学术语中没有任何意义,所以它会引发错误。 sysdate实际上已经是一个数字,因此您可以为其添加另一个数字。然后,使用to_char将该单个值转换为格式化的字符串,如下所示:

create or replace function get_return_date(
p_days in number)
return varchar2
is 
begin
return to_char(sysdate + p_days,'YYYY-MM-DD:HH24:MI');
end;
/