字符串转成时间,才用to_date,你那日期为啥还要转啊?

解决方案 »

  1.   

    SQL> select to_date('2013-08-05','yyyy-mm-dd') from dual;TO_DATE('2013-
    --------------
    05-8月 -13SQL> select to_date(sysdate,'yyyy-mm-dd') from dual;
    select to_date(sysdate,'yyyy-mm-dd') from dual
                   *
    第 1 行出现错误:
    ORA-01861: 文字与格式字符串不匹配
      

  2.   

    select trunc(sysdate) from dual;
      

  3.   


    select to_char(sysdate,'yyyy-mm-dd') from dual;
      

  4.   


    select to_date('20130101','yyyy-mm-dd') from dual;
      

  5.   

    你看你这列数据 格式是不是有非YYYY-MM-DD的数据
    如果有的话就得用TO_CHAR不用用TO_DATE
      

  6.   

    字符串格式化为日期型用to_char
    本身是日期型格式化时用trunc
      

  7.   

    to_date(日期,'yyyy-mm-dd'),你用sysdate作为日期但是这个日期的格式不是这样的。
    我觉得你的想法是不是有误区啊,用to_char(sysdate,'yyyy-mm-dd') 岂不是更好?
    比如:select to_char(sysdate,'yyyy-mm-dd') from dual;SQL> select to_char(sysdate,'yyyy-mm-dd') from dual; TO_CHAR(SYSDATE,'YYYY-MM-DD')
    -----------------------------
    2014-03-21