问题描述
我正在使用 Dremio 查询多个数据源。我有一个带有“时间戳”列数据类型的 SAPIQ 数据库,其值例如“2020-01-01 10:04:20”(格式:YYYY-MM-DD hh:mm:ss)。
问题是当我查询表 Select * from TableABC
时,我收到一个空指针异常,Datetime 无法转换为时间戳。
但是,当我使用强制转换函数指定列时,以下查询有效。
SELECT ColumnA,ColumnB,CAST(ColumnTS as VARCHAR),ColumnD FROM TableABC;
请注意,SAPIQ 中的源数据类型是 DATETIME。
Dremio 将其转换为 Timestamp 但抛出空指针,并且只有当我将 Timestamp 转换为 VARCHAR 时查询才有效,如上所示。
上面的查询在我进行显式转换时有效。但我的问题是我希望转换是隐式的,以便 Select * from TableABC
能够在没有 NullPointerException 的情况下获取我的结果。
我已经在“src/main/resources/arp/implementation/sybase-arp.yaml”中尝试了以下内容,但没有成功。下面的配置向我抛出 NullPointerException。 https://github.com/dremioJonny/dremio-sybase-connector
上的源代码- source:
name: "DATETIME"
max_scale: 8
dremio:
name: "varchar"
default_cast_spec: true
感谢 Dremio 专家的任何帮助。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)