如何得到当前周是该季度的第几周?
最好通过select查询语句得到。

解决方案 »

  1.   

    select (trunc(sysdate, 'd') - trunc(trunc(sysdate, 'q'), 'd')) / 7
      from dual;跨月的 那个星期怎么算  加减1
      

  2.   

    w是计算天数/7取ceil的,所以不完全是你说的跨越自然周
      

  3.   

    SQL> SELECT ceil((SYSDATE -
      2              (trunc(SYSDATE, 'q') - to_char(trunc(SYSDATE, 'q') - 1, 'd'))) / 7)
      3    FROM dual;
     
    CEIL((SYSDATE-(TRUNC(SYSDATE,'
    ------------------------------
                                10
     
    SQL> 
      

  4.   

    我也发现了。不过,我都是按照我自己的理解。不晓得设计的人是怎么定义的。我现在的算法是根据你在《 用sql语句如何能够查出来某天在季度中是第几天?》中的回答作参考写得。应该是我所理解的第几周的概念。
    ceil((sysdate-trunc(trunc(sysdate,'Q'),'IW'))/7)
      

  5.   


    --这样?
    select to_char(sysdate,'ww')-(to_char(trunc(sysdate,'q'),'ww')-1) from dual
      

  6.   

    上面思路是先找到季度第一天,然后根据第一天找到其所在周的原点,也就是其所在周的上一周的最后一天,然后用sysdate去想减,再除7取整.