报错ORA-01830: date format picture ends before converting entire input string

使用streamset从Oracle往Hive中导入数据时

1、报错:ORA-01849: hour must between 1 and 12

33.PNG

to_date格式

TO_DATE('2018-01-18 10:44:38','yyyy-mm-dd hh24:mi:ss')

2、报错:ORA-01830: date format picture ends before converting entire input string

11.PNG

使用to_date后:2018-01-18 10:44:38 > 2018-01-18 10:44:38.0 导致错误
应该instr配合to_date使用

TO_DATE(SUBSTR('2018-01-18 10:44:38',0,INSTR('2018-01-18 10:44:38',':',1,1)-3),'yyyy-mm-dd hh24:mi:ss') 

instr用法
Oracle根据某个日期查询格式为:

SELECT LAST_UPDATE_DATE FROM PT20.DOME_USER WHERE LAST_UPDATE_DATE > TO_DATE('2018-01-18 10:44:38','yyyy-mm-dd hh24:mi:ss') ORDER BY LAST_UPDATE_DATE
SELECT LAST_UPDATE_DATE FROM PT20.DOME_USER WHERE LAST_UPDATE_DATE > TO_DATE(SUBSTR('2018-01-18 10:44:38',0,INSTR('2018-01-18 10:44:38',':',1,1)-3),'yyyy-mm-dd hh24:mi:ss') ORDER BY LAST_UPDATE_DATE

在Streamset中的写法为:

SELECT * FROM PT20.DOME_USER WHERE LAST_UPDATE_DATE > TO_DATE(SUBSTR('${OFFSET}',0,INSTR('${OFFSET}',':',1,1)-3),'yyyy-mm-dd hh24:mi:ss') ORDER BY LAST_UPDATE_DATE

图中sql应为上面的。


22.PNG

Oracle的连接方式:

jdbc:oracle:thin:@172.17.18.110:1521:test
jdbc:oracle:thin:@//172.17.18.110:1521/test
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。