to_char是转换成字符型。。
to_date才是转换成日期型

解决方案 »

  1.   

    不好意思,搞错了!!!如何用TO_DATE('2004年1月1号', '????')转换成日期型???
      

  2.   

    不知行不行耶(不在办公室,没有oracle环境,无法测试):
    to_date('2004年1月1日','yyyy年mm月dd日')
      

  3.   

    实在不行用replace
    select to_date(replace(replace(replace('2004年1月2日','年','-'),'月','-'),'日',''),'yyyy-mm-dd') from dual
      

  4.   

    to_date('2004年1月1日','YYYYMMDD')
      

  5.   

    楼上的几种方法中,中有replace行的。select to_date(replace(replace(replace('2004年1月2日','年','-'),'月','-'),'日'),'yyyy-mm-dd') from dual
      

  6.   

    hewei2003() 的 测试通过   正确
      

  7.   

    to_date('2004年1月1日','yyyy"年"mm"月"dd"日"')格式串中的非日期格式串字符需要使用双引号括起来。
      

  8.   

    select to_date('2004年1月1日','yyyy"年"mm"月"dd"日"') from dualTO_DATE('2004年1月1日','YYYY"?2004-1-1支持楼上的
      

  9.   

    select to_date(translate('2004年1月1号','年月号','--'), 'YYYY-MM-DD') from dual;
      

  10.   

    select to_date('2004年1月1日','yyyy"年"mm"月"dd"日"') from dual
    ================================
    不错
      

  11.   

    我用的是ORACLE9I,为什么在SQLPLUS里用
    select to_date('2004年1月1日','yyyy"年"mm"月"dd"日"') from dual
    提示:
    ORA-01821:日期格式无法识别???