创建用户定义的函数 - Amazon Redshift

创建用户定义的函数

您可以使用 SQL SELECT 子句或 Python 程序创建自定义标量用户定义函数 (UDF)。新函数存储在数据库中,可供任何具有足够权限的用户运行。您运行自定义标量 UDF 的方式与运行现有 Amazon Redshift 函数的方式大致相同。

对于 Python UDF,除了使用标准 Python 功能外,您还可以导入您自己的自定义 Python 模块。有关更多信息,请参阅适用于 UDF 的 Python 语言支持。请注意,Python 3 不适用于 Python UDF。要获得 Python 3 对 Amazon Redshift UDF 的支持,请改用 创建标量 Lambda UDF

您还可以创建 AWS Lambda UDF 以将 Lambda 中定义的自定义函数用作 SQL 查询的一部分。Lambda UDF 使您能够编写复杂的 UDF 并与第三方组件集成。它们还可以帮助您克服当前 Python 和 SQL UDF 的一些局限性。例如,它们可以帮助您访问网络和存储资源,并编写更多完整的 SQL 语句。您可以使用 Lambda 支持的任何编程语言创建 Lambda UDF,如 Java、Go、PowerShell、Node.js、C#、Python 和 Ruby。或者您可以使用自定义运行时。

预设情况下,所有用户都可以执行 UDF。有关权限的更多信息,请参阅 UDF 安全性和权限