日期:2014-05-17  浏览次数:20826 次

oracle 关于月中的周 的sql 语句! 急求!
select to_char(to_date(OXYGENTIME,'yyyy-MM-dd HH24:mi:ss'),'w') 周,trunc(avg(eos),2) eos  from v_OXYGENMAN where userid=2 and OXYGENTIME like '2013-02%' group by to_char(to_date(OXYGENTIME,'yyyy-MM-dd HH24:mi:ss'),'W')


查询出表中二月的全部天的数据 ,并按周来分组 。但我这种分组,是1号为第一周的第一天。  
28天的话,就是除以7整整四个周。 

而要求是自然周,就是比如2013年2月,1号、2号为第一周,
3号到9号第二周,10号到16号为第三周,17号到23号为第四周,24号到28号为第四周。

急求大神指教,在线等啊!!!!   
oracle sql 周??月

------解决方案--------------------

  1  select trunc(sysdate,'mm')+rownum-1 aa,
  2  ceil(to_char((trunc(sysdate,'mm')+rownum-1),'dd')/7) bb
  3* from dual connect by rownum<=add_months(sysdate,1)-sysdate
SQL> /

AA                     BB
-------------- ----------
01-4月 -13              1
02-4月 -13              1
03-4月 -13              1
04-4月 -13              1
05-4月 -13              1
06-4月 -13              1
07-4月 -13              1
08-4月 -13              2
09-4月 -13              2
10-4月 -13              2
11-4月 -13              2

AA                     BB
-------------- ----------
12-4月 -13              2
13-4月 -13              2
14-4月 -13              2
15-4月 -13              3
16-4月 -13              3
17-4月 -13              3
18-4月 -13              3
19-4月 -13              3
20-4月 -13              3
21-4月 -13              3
22-4月 -13              4

AA                     BB
------