select sum(round((sysdate-to_date(PEND_TIME,'yyyy-mm-dd HH24:MI:SS')),0)) from TB_WORKSHEET
报错 ORA-01843: 无效的月份如何解决啊

解决方案 »

  1.   

    PEND_TIME里面有的内容不是日期格式吧。
      

  2.   

    写个cursor,一条一条检查。
      

  3.   

    PEND_TIME 格式不对,你里面的值也要是 yyyy-mm-dd HH24:MI:SS 这种格式,如果是20161115这种格式,就只能用yyyymmdd
      

  4.   

     PEND_TIME 的数据类型是什么?
    要是VARCHAR的话,那你的数据格式可能有问题,年月日顺序
    要是DATE的类型,你就不能再用TO_dATE函数了
      

  5.   

    综合楼上几位所说的,确认PEND_TIME里面的数据格式是否正确。
    如例中数据
    select substr(TB_WORKSHEET,6,2) from TB_WORKSHEET  ,其中不是01-12的数据都是错误的