oracle jdbc外部表日期查询报错

【详述】问题详细描述
1、创建oracle jdbc资源
create external resource r_29
properties (
“type” = “jdbc”,
“user” = “test”,
“password” = “test”,
“jdbc_uri” = “jdbc:oracle:thin:@192.168.1.29:1521/orcl”,
“driver_url” = “file:///opt/ojdbc8-21.9.0.0.jar”,
“driver_class” = “oracle.jdbc.driver.OracleDriver”
);

2、创建相关外部表
CREATE TABLE order_t
(
UUID VARCHAR(64),
ORDER_UUID VARCHAR(64),
ORDER_DTL_UUID VARCHAR(64),
NO VARCHAR(32),
CREATE_DATE DATETIME
) ENGINE=JDBC
PROPERTIES (
“resource” = “r_29”,
“table” = “test.order_t”
);

3、使用时间字段查询:
select * from order_t where create_date > ‘2023-12-25’
或者使用函数str_to_date、cast之类的函数转换成日期类型,都报错

【StarRocks版本】例如:2.5.12
【集群规模】:3fe(3 follower)+3be(fe与be混部)
【机器信息】CPU虚拟核/内存/网卡:16C/32G/万兆
【附件】

我试了别的条件(数值,字符串),是可以的,但是日期格式就不行,还换了jdbc的驱动,结果也是一样,传到oracle,就成了字符串

CREATE_DATE 这个字段在 Oracle 侧是什么类型,sr中与其保持一致,然后如果是date类型where create_date > ‘2023-12-25’,如果是datetime类型where create_date > ‘2023-12-25 12:12:12’ 再看下

oracle是date类型,sr中是datetime类型
换成where create_date > ‘2023-12-25 12:12:12’ 效果一样,还是报错
1064 - open JDBCScanner failed, error: java.sql.SQLDataException: ORA-01861: literal does not match format string

您sr中换成date试下 where create_date > ‘2023-12-25’

不行的,换成date,查询都报错了,1064 - Type mismatches on column[CREATE_DATE], JDBC result type is Timestamp, please set the type to datetime,还是得datetime,因为oracle存储的时间是带时分秒的

您好,暂时可以先试一下用to_date()绕过一下,后续我们修一下这个地方。 select * from order_t where to_date(create_date )> ‘2023-12-25’

好,谢谢,但是我看官方文档说这样的话,使用函数没有办法使用谓词下推,如果表比较大,查询会很慢的

您好,想问这个什么时候可以修复下,有具体的时间安排吗?