CREATE FUNCTION in ORACLE

simple Oracle-function to calculate the second next day of week per month

CREATE OR REPLACE FUNCTION PROJEKTE_INDI.GET_SECOND_NEXT_DAYOFWEEK(firstofmonth IN date, dayofweek IN VARCHAR2) 
RETURN date
IS 
    second_next_dayofweek date;
/*


returns the second next dayofweek in a month.
firstmonth is the first day in the month
dayofweek is the name of the day – monday, … (language depends on server installation!)


eg
SELECT GET_SECOND_NEXT_DAYOFWEEK(‚01.03.2011‘, ‚Mittwoch‘) AS DAYOFWEEK from DUAL


*/
BEGIN
    SELECT NEXT_DAY(NEXT_DAY(firstofmonth – 1,dayofweek),dayofweek) AS DAYOFWEEK 
    INTO second_next_dayofweek
    FROM DUAL;
    RETURN(second_next_dayofweek);
END
;



Advertisements

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s