_xkoko
COCO 很懒 什么都没留下......

错误原因: 字符串转时间格式不对报错的(字符串格式 是否带有时分秒)

比如to_date(‘2019-02-27 16:36:00’,’yyyy-mm-dd’)这个就无法转换,就会抛异常:ORA-01830: 日期格式图片在转换整个输入字符串之前结束

to_date函数

to_date函数用于字符串转日期:

--oracle 为了区分分钟和月份,月份以mi表示

to_date('2019-02-27 16:36:00','yyyy-mm-dd hh24:mi:ss')

to_date('2019-02-27','yyyy-mm-dd') 

 

 

当前数据库的数据格式 2019-02-27 16:36:00

直接转化时 用substr() 作截取时还是报错 。。。。。ORA-01861:文字鱼格式字符串不匹配

select * from(select * from H22222222222222_201901 t where 
to_date(substr(t.datatime,1,10),'yyyy-mm-dd')=TO_CHAR(SYSDATE,'yyyy-mm-dd') order by t.datatime desc) 

在添加一层函数 

TRUNC():类似截取函数,按指定的格式截取输入的数据。

trunc(sysdate) //返回系统当前时间
trunc(sysdate,'yyyy');//返回当前年的第一天
trunc(sysdate, 'mm');//返回当前月的第一天
trunc(sysdate, 'dd');//返回当前时间的年月日
trunc(sysdate, 'd');//返回当前星期的第一天
trunc(sysdate, 'hh');//返回当前小时

select * from(select * from H22222222222222_201902 t where 
trunc(to_date(substr(t.datatime,1,10),'yyyy-MM-dd ')) = trunc(sysdate) order by t.datatime desc)

  

 

posted on 2019-02-27 16:48  _xkoko  阅读(1625)  评论(0编辑  收藏  举报