

 Amazon Redshift 將不再支援從修補程式 198 開始建立新的 Python UDFs。現有 Python UDF 將繼續正常運作至 2026 年 6 月 30 日。如需詳細資訊，請參閱[部落格文章](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# Amazon Redshift 中的使用者定義函式
<a name="user-defined-functions"></a>

您可以使用 SQL SELECT 子句或 Python 程式，建立自訂的純量使用者定義函數 (UDF)。新函數儲存於資料庫，可供具有足夠權限的任何使用者執行。執行自訂純量 UDF 的方式與執行現有 Amazon Redshift 函數的方式大致相同。

若為 Python UDF，除了使用標準 Python 功能外，您還可以匯入自己的自訂 Python 模組。如需詳細資訊，請參閱[UDF 的 Python 語言支援](udf-python-language-support.md)。請注意，Python 3 不適用於 Python UDF。若要取得 Amazon Redshift UDF 的 Python 3 支援，請改用 [純量 Lambda UDF](udf-creating-a-lambda-sql-udf.md)。

您也可以建立 AWS Lambda UDFs使用 Lambda 中定義的自訂函數做為 SQL 查詢的一部分。Lambda UDF 可讓您撰寫複雜的 UDF，並與協力廠商元件整合。它們還可以幫助您克服目前 Python 和 SQL UDF 的一些限制。例如，它們可以協助您存取網路和儲存資源，並撰寫更完整的 SQL 陳述式。您可以在任何由 Lambda 支援的程式設計語言，例如 Java、Go、PowerShell、Node.js、C\$1、Python 和 Ruby 的程式設計語言中建立 Lambda UDF。或者，您也可以使用自訂執行期。

依預設，所有使用者皆可執行 UDF。如需權限的相關資訊，請參閱 [UDF 安全與許可](udf-security-and-privileges.md)。

**Topics**
+ [UDF 安全與許可](udf-security-and-privileges.md)
+ [防止 UDF 命名衝突](udf-naming-udfs.md)
+ [純量 SQL UDF](udf-creating-a-scalar-sql-udf.md)
+ [純量 Python UDF](udf-creating-a-scalar-udf.md)
+ [純量 Lambda UDF](udf-creating-a-lambda-sql-udf.md)
+ [使用者定義函式 (UDF) 的使用案例範例](udf-example-uses.md)