开发者社区> 问答> 正文

UDAF实际调用时传入int类型,定义时是long类型,运行时报参数不匹配,int不能转成long类型吗?发现Flink-SQL在编写的时候需要写很多的CAST

转自钉钉群21789141:UDAF实际调用时传入int类型,定义时是long类型,运行时报参数不匹配,int不能转成long类型吗?发现Flink-SQL在编写的时候需要写很多的CAST

展开
收起
赵慧@ApacheFlink中文社区 2019-02-14 15:02:29 2872 0
2 条回答
写回答
取消 提交回答
  • 可以在开发UDF的时候编写多个重载。好像没有遇到运行只要实现一个的问题。

    2019-07-17 23:28:12
    赞同 展开评论 打赏
  • 云邪:Flink 目前是强类型匹配的,Blink 有做隐式类型转换。 你可以在 UDAF 中通过方法重载的方式加一个 int 参数方法,然后路由到 long 参数的方法。

    问: 我记得我当时重载过一个int类型参数的方法,但是在运行时会告诉我说int和long只要实现一个,我不得不删掉了这个int的重载,使用cast

    2019-07-17 23:28:12
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
SQL Server在电子商务中的应用与实践 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载