首页 > 解决方案 > 在一个语句中将 UDF 应用于另一个语句

问题描述

,我需要在 AWS Athena 的一个语句中调用两个 UDF。因此,必须将一个 UDF 应用于另一个 UDF 的结果。但是,到目前为止,我还没有能够实现它。你有没有遇到过这种情况?例如,我尝试了以下语句(但我收到错误“GENERIC_INTERNAL_ERROR: function_1(varchar):varchar is not a scalar function”):

USING
FUNCTION function_1(col1 VARCHAR) RETURNS VARCHAR TYPE LAMBDA_INVOKE WITH (lambda_name = 'lambda_1'),
FUNCTION function_2(str VARCHAR, coId INTEGER) RETURNS VARCHAR TYPE LAMBDA_INVOKE WITH (lambda_name = 'lambda_2')
SELECT col1,col2 FROM ( SELECT T1.col1 as col1, function_2(function_1(T1.col2), 999) as col_result
FROM schema.table_1 T1, schema.table_0 T0
WHERE  T1.col1=T0.col1;

标签: user-defined-functionsamazon-athena

解决方案


推荐阅读