自己第一次写的ORACLE函数,很简单,但希望对大家有帮助。
create or replace function FIRST_LAST_WEEK_DAY(IN_DAY IN DATE,
I IN INTEGER)
return VARCHAR2 is
Result VARCHAR2(8);
J INTEGER;
begin
/*
获取一周中的第一日 first_last_week_day(sysdate,0)
获取一周中的最后一日 first_last_week_day(sysdate,1)
*/
SELECT TO_CHAR(IN_DAY, 'D') INTO J FROM DUAL;
IF I = 0 THEN
RESULT := TO_CHAR(IN_DAY - J + 1, 'YYYYMMDD');
ELSE
RESULT := TO_CHAR(IN_DAY + (7 - J), 'YYYYMMDD');
END IF;
return(Result);
end FIRST_LAST_WEEK_DAY;