我正在为KSQL引擎实现自定义库(使用UDF),我想知道如何解决其中一个问题。
我定义了几个UDF,它们使用传递的参数执行一些操作,并返回一些输出。现在,我需要将这些UDF (它们的调用)传递给其他UDF。所以这个结构看起来是这样的:
从流中选择* UDF_1(UDF_11(s.param1,s.param2),UDF_12(s.param3,s.param4),.)发出更改;
是否可以定义使用其他UDF作为参数的UDF?如果是,我怎样才能做到呢?如果没有,请分享你对我如何解决这个问题的想法。
谢谢你提前提供帮助。
发布于 2021-04-01 14:12:16
我假设您是在问方法定义的参数应该是什么?
一个UDF将返回一个值,函数将被计算到内到外,所以它们不是“接受UDF作为参数”,而是返回值,通常是一个原始java类型。
例如,如果拆分一个string列,然后将其强制转换为int,则必须类似于CAST(STRSPLIT(c, delim)[0] AS INT),其中cast操作符接受任何对象(这里是字符串),并返回一个整数,该整数可以进一步传递给更多的UDF。
https://stackoverflow.com/questions/66830666
复制相似问题