从sql中的日期开始获取星期

从sql中的日期开始获取星期,sql,plsql,Sql,Plsql,我想了解如何根据用户输入将月份划分为相应的周,如从每月的1日开始或到每周的第一周 例如: 如果用户需要基于当月1日(即2012年6月1日)的数据 然后 2012年6月 1/6-7/6 8/6-14/6 15/6-21/6 22/6-28/6 29/6-30/6 如果用户希望根据第一周,即2012年4月6日 2012年6月 4-10 11-17 18-24 我认为这将是一个财政周 谁能告诉我怎么才能得到这个 如何根据给定的日期得到完整的一周这可以给你一个想法 declare vdate date

我想了解如何根据用户输入将月份划分为相应的周,如从每月的1日开始或到每周的第一周

例如: 如果用户需要基于当月1日(即2012年6月1日)的数据 然后

2012年6月 1/6-7/6 8/6-14/6 15/6-21/6 22/6-28/6 29/6-30/6

如果用户希望根据第一周,即2012年4月6日

2012年6月 4-10 11-17 18-24
我认为这将是一个财政周

谁能告诉我怎么才能得到这个


如何根据给定的日期得到完整的一周这可以给你一个想法

declare
vdate date := sysdate;  
temp  Date;
begin
temp  :=  VDate;
WHILE last_day(temp) >=  vDate
LOOP
   dbms_output.put_line(to_char(vDate));
   vDate := vDate+7;
END LOOP;
end;

end;
结果将从至日(2012年12月10日)开始到本周的最后一天

    10-DEC-12
    17-DEC-12
    24-DEC-12
    .....