如何解决 Athena 中的“未注册函数”语法错误?
上次更新时间:2020 年 5 月 22 日
当我在 Amazon Athena 中运行 SELECT 操作时,出现如下错误:“SYNTAX_ERROR:行 1:8:未注册函数 function_name”。
解决方法
当您尝试使用不受 Athena 支持的函数时,通常会发生此错误。有关 Athena 支持的函数的列表,请参阅 Amazon Athena 中的 Presto 函数。或者,运行 SHOW FUNCTIONS 语句。以下是输出的部分示例:
Function Return Type Argument Types Function Type Deterministic Description
1 abs bigint bigint scalar true absolute value
2 abs decimal(p,s) decimal(p,s) scalar true absolute value
3 abs double double
如果 Athena 不支持您要使用的函数,请考虑在 Athena 中编写用户定义的函数 (UDF)。UDF 允许您创建自定义函数来处理记录或一组记录。UDF 将接受参数,执行工作,然后返回结果。有关 UDF 的示例和更多信息,请参阅使用用户定义的函数进行查询(预览版)。