在ORACLE里面怎么计算两个日期之间间隔的周数,如2005-01-06至2006-02-01之间的周数??/?

解决方案 »

  1.   

    一年以内可以通过
    select to_char(sysdate,'fm WW') - to_char(sysdate-5,'fm WW') from dual 取得
    超过一年(即比较的两个日期不在同一年的话)麻烦一点
      

  2.   

    select (to_char(to_date('2006-02-01', 'yyyy/mm/dd hh24-mi-ss'),
                    'fm WW') -
           to_char(to_date('2006-01-01', 'yyyy/mm/dd hh24-mi-ss'),
                    'fm WW')) 
           +
           (to_char(to_date('2005-12-31', 'yyyy/mm/dd hh24-mi-ss'),
                    'fm WW') -
           to_char(to_date('2005-02-01', 'yyyy/mm/dd hh24-mi-ss'),
                    'fm WW'))
      from dual