oracel解决办法

oracel2012-9-212012-10-32012-11-22012-12-1数据类型为varChar.数据如上,sql语句如下:SELECT * FROM tabl

oracel
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个月的统计情况,还请大神指点指点.
[解决办法]


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
;