我是SQL开发人员编码的新手,我真的不知道如何编写所有代码,我需要一些帮助。 我需要创建一个简单的函数来返回一个返回日期,假设最终会像这样结束:
SQL> SELECT get_returndate(7)
FROM dual;
_________
GET_RETURNDATE(7)
----------------------------
2013-10-21:23:59
___
假设采用1个参数,然后将sysdate + parameter
作为日期返回。
这就是我得到的
create or replace
function get_retdate(
p_days number)
return date
as
v_retdate date;
v_currdate date := sysdate;
begin
select v_date + p_days
into v_retdate
return
from dual;
end;
我的问题是我不知道如何将参数添加到函数中的局部变量,因为我对SQL和函数非常新,所以我没有得到任何...我打赌这很容易我对SQL不太满意。
答案 0 :(得分:0)
我很高兴你的初学者尝试 Oracle编程 ,并且你接近它。但是你必须查看手册。
以下是你应该离开的方式:
create or replace function get_retdate( p_days number)
return date
as
v_retdate date;
v_currdate date := sysdate;
begin
select v_currdate + p_days into v_retdate from dual;
return v_retdate;
end get_retdate;
/
答案 1 :(得分:-1)
如果您使用的是MS SQL,请使用DATEADD:http://www.w3schools.com/sql/func_dateadd.asp
示例:
DECLARE SevenDaysFromNow DATETIME = DATEADD(d,7,GETDATE())
答案 2 :(得分:-1)
Transact-SQL(SQL Server)提供了一个非常简单的解决方案,不需要存储过程:
SELECT GETDATE() + 7;
给我的时区:
2013-10-24 00:29:54.137