做一个统计报表的时候,用户要求按星期统计。
于是写了一个函数,得到一个星期一到星期天的时间范围的字符串:
create or replace function GetWeekRange(Input IN Date) return varchar2 is
temp number(10);
begin
temp := 7-mod(Floor(trunc(Add_months(sysdate,1),'D') - trunc(Input)),7);
return
(
TO_CHAR((Input - (temp - 1)), 'yyyy-MM-dd') ||
' ' ||
TO_CHAR((Input + (7 - temp)), 'yyyy-MM-dd')
);
end GetWeekRange;
于是写了一个函数,得到一个星期一到星期天的时间范围的字符串:
create or replace function GetWeekRange(Input IN Date) return varchar2 is
temp number(10);
begin
temp := 7-mod(Floor(trunc(Add_months(sysdate,1),'D') - trunc(Input)),7);
return
(
TO_CHAR((Input - (temp - 1)), 'yyyy-MM-dd') ||
' ' ||
TO_CHAR((Input + (7 - temp)), 'yyyy-MM-dd')
);
end GetWeekRange;
本文介绍了一个 SQL 函数 GetWeekRange,该函数能够返回指定日期所在星期的起始和结束日期,以便进行周期性的数据统计。通过使用日期运算和格式化函数,实现了灵活的日期范围生成。
1万+

被折叠的 条评论
为什么被折叠?



