0

我有一个看起来像这样的模式:表:org_table

`transaction_amt` VARCHAR(64) NOT NULL,
`transaction_adj_amt` BIGINT NOT NULL ,
`event_time` TIMESTAMP(3),
`fd_output` ROW<`restime`  BIGINT `outcome` VARCHAR(64)>,

当我像这样查询此表时:

SELECT transaction_amt, transaction_adj_amt, event_time, fd_output.restime as response_time, fd_output.outcome as outcome,  YEAR(event_time), MONTH(event_time) 
           FROM org_table

在表上运行上述查询时,出现错误。我在这里缺少什么吗?

scala.MatchError: CAST (of class org.apache.calcite.sql.fun.SqlCastFunction
4

2 回答 2

0

尝试fd_output.get(0)访问休息时间,fd_output.get(1)以获得结果。

于 2021-12-16T18:35:14.690 回答
0

可能你需要注意 Flink 内置函数的输入参数,比如 YEAR 和 MONTH 函数,它们的输入参数是日期类型

Flink 内置功能说明可以参考 https://ci.apache.org/projects/flink/flink-docs-release-1.13/docs/dev/table/functions/systemfunctions/

于 2021-09-24T02:59:34.607 回答