一则> ORA-01722: invalid number的处理,原因:非DATE类型时间不能用to_char转换

出错的SQL写法:

and to_char(outTime,'mm') = to_char(sysdate,'mm')

错误代码:

> ORA-01722: invalid number

正确写法:

1,用substr截取月份

and substr(outTime,6,2) = to_char(sysdate,'mm')

2,先to_date转换为时间类型再取月份

and to_char(to_date(outTime,'YYYY-MM-DD HH24:MI:SS'), 'MM')=to_char(sysdate,'mm')

原因:非DATE类型时间不能直接用to_char转换

 

posted @ 2022-10-04 00:15  IT情深  阅读(71)  评论(0编辑  收藏  举报