2012-9-21
2012-10-3
2012-11-2
2012-12-1                  数据类型为varChar.数据如上,sql语句如下:
SELECT * FROM table where
to_date(CREATE_DATE,'yyyy-MM-dd') between TO_CHAR(ADD_MONTHS(SYSDATE,-5), 'YYYY-MM-') ||'01' and TO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE,-5)),'YYYY-MM-DD')因需查询6个月的统计情况,还请大神指点指点.

解决方案 »

  1.   


    SELECT * FROM TABLE
    WHERE TO_DATE(CREATE_DATE,'YYYY-MM-DD') 
          BETWEEN TRUNC(ADD_MONTHS(SYSDATE,-5),'MM')  --前5月第一天的00:00:00
          AND TO_DATE(TO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE,-5)),'YYYYMMDD')||'235959','YYYYMMDDHH24MISS')  --前5月最后一天的23:59:59
    ;
      

  2.   

    select * from tablec where TRUNC(TO_DATE(table.datestr,'yyyy-mm-dd hh24:mi:ss'))> add_months(sysdate,-6)