DateAdd function Oracle

>>Script Language and Platform: Oracle
Get a new date based in interval parameter.

Author: Alexis


Create or replace Function DateADD(DatePart VarChar , Number int, CurrentDate Date)
/*
================================================================================
Arguments:
DatePart : Specifies which part of the date to calculate the difference.
The table below list DateParts and abbreviations recognized
1) D, DD, Day;
2) M, MM, Month;
3) Y, YY, Year;
4) H, HH, Hour;
5) N, NN, MI, Minute;
6) S, SS, Second;
7) W, WW, Week;
Number : The count of days, months, hours, etc to be apply
CurrentDate : The date for the calculation
================================================================================
*/
return date
as
result Date;
sType char(1);
begin
sType := substr(upper(DatePart), 1, 1);
if sType = ”S” then
result := CurrentDate + Number/(24*60*60);
end if;
if sType = ”H” then
result := CurrentDate + Number/24;
end if;
if sType = ”D” then
result := CurrentDate + Number;
end if;
if sType = ”W” then
result := CurrentDate + (Number*7);
end if;
if sType = ”Y” then
result := Add_Months(CurrentDate, Number*12);
end if;
if sType = ”N” then
result := CurrentDate + Number/(24*60);
end if;
if sType = ”M” then
if upper(DatePart) like ”MI%” then
result := CurrentDate + Number/(24*60);
else
result := Add_Months(CurrentDate, Number);
end if;
end if;
return result;
exception when others then return null;
End;
/



Disclaimer:
We hope that the information on these script pages is
valuable to you. Your use of the information contained in these pages,
however, is at your sole risk. All information on these pages is provided
“as -is”, without any warranty, whether express or implied, of its accuracy,
completeness, or fitness for a particular purpose…

Disclaimer Continued

Back to Database Journal Home

Latest Articles