如题,我用select to_date('2009-11-13 2:07:50','yyyy-mm-dd') from table1  结果报错:ORA-01830: date format picture ends before converting entire input string

解决方案 »

  1.   

    select to_char('2009-11-13 2:07:50','yyyy-mm-dd') from table1 
      

  2.   

    TO_DATE 函数支持以下2种写法:select to_date('2009-11-13','yyyy-mm-dd') from dual;select to_date('2009-11-13 2:07:50','yyyy-mm-dd HH24:MI:SS') from DUAL; 
    ------------------------------------------------------------------------------
    Blog: http://blog.csdn.net/tianlesoftware
    网上资源: http://tianlesoftware.download.csdn.net
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
    Q Q 群:62697716 
      

  3.   


    可以用trunc:
    select trunc(to_date('2009-11-13 2:07:50','yyyy-mm-dd HH24:MI:SS')) from DUAL; 
    ------------------------------------------------------------------------------
    Blog: http://blog.csdn.net/tianlesoftware
    网上资源: http://tianlesoftware.download.csdn.net
    相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
    Q Q 群:62697716 
      

  4.   

    把to_date 改成 to_char 后报错是:ORA-01722: invalid number
    继续求教!
      

  5.   

    select to_char('2009-11-13 2:07:50','yyyy-mm-dd') from dual
      

  6.   

    select trunc(to_date('2009-11-13 2:07:50','yyyy-mm-dd HH24:MI:SS')) from DUAL; 
      

  7.   

    select TRUNC(to_date('2009-11-13 2:07:50','YYYY-MM-DD HH:MI:SS')) from DUAL
      

  8.   

    select to_date(substr('2009-11-13 2:07:50',1,10),'YYYY-MM-DD') from DUAl
      

  9.   

    如果你在客户端   
        
    hkey_local_machine/software/oracle主健下   
    添加串值   nls_date_language   设为american   
    添加串值   nls_date_format   设为   yyyy-mm-dd   
        
    如果你在服务器端   
        
    hkey_local_machine/software/oracle/home0主健下   
    添加串值   nls_date_language   设为american   
    添加串值   nls_date_format   设为   yyyy-mm-dd  
        把client的环境变量修改  nls_date_format 为  yyyy-mm-dd   等你想要的格式就可以了  对于应用来说,决定性   的因素在于client,而不在于存储   
      不管你怎么修改server端的默认返回属性   
      只要client设定为   某种格式,server的任何设置都没有意义了   
        
        
      SQL>     select   *   from   nls_database_parameters   where   PARAMETER   =   'NLS_DATE_FORMAT';   
        
      PARAMETER   
      ------------------------------   
      VALUE   
      --------------------------------------------------   
      NLS_DATE_FORMAT   
      DD-MON-RR   
        
      在init中是可以设置该参数的,如果,你认为有意义的话,可以去尝试