报错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

你可能感兴趣的:(报错ORA-01830: date format picture ends before converting entire input string)