メインコンテンツまでスキップ
バージョン: Latest-3.4

CREATE FUNCTION

説明

ユーザー定義関数 (UDF) を作成します。現在、Java UDF のみ作成可能で、スカラー関数、ユーザー定義集計関数 (UDAF)、ユーザー定義ウィンドウ関数 (UDWF)、ユーザー定義テーブル関数 (UDTF) を含みます。

Java UDF のコンパイル、作成、使用方法の詳細については、Java UDF を参照してください。

注意

グローバル UDF を作成するには、SYSTEM レベルの CREATE GLOBAL FUNCTION 権限が必要です。データベース全体の UDF を作成するには、DATABASE レベルの CREATE FUNCTION 権限が必要です。

構文

CREATE [OR REPLACE] [GLOBAL] [AGGREGATE | TABLE] FUNCTION function_name
(arg_type [, ...])
RETURNS return_type
PROPERTIES ("key" = "value" [, ...])

パラメータ

パラメータ必須説明
OR REPLACEいいえ同じ関数シグネチャを持つ関数が存在する場合、それが置き換えられます。v3.4 からサポートされています。
GLOBALいいえグローバル UDF を作成するかどうか。v3.0 からサポートされています。
AGGREGATEいいえUDAF または UDWF を作成するかどうか。
TABLEいいえUDTF を作成するかどうか。AGGREGATETABLE の両方が指定されていない場合、スカラー関数が作成されます。
function_nameはい作成したい関数の名前。このパラメータにはデータベース名を含めることができます。例えば、db1.my_func のようにします。function_name にデータベース名が含まれている場合、UDF はそのデータベースに作成されます。含まれていない場合、UDF は現在のデータベースに作成されます。新しい関数の名前とそのパラメータは、宛先データベース内の既存の名前と同じにすることはできません。そうでないと、関数を作成できません。関数名が同じでもパラメータが異なる場合、作成は成功します。
arg_typeはい関数の引数の型。追加された引数は , ... で表すことができます。サポートされているデータ型については、Java UDF を参照してください。
return_typeはい関数の戻り値の型。サポートされているデータ型については、Java UDF を参照してください。
PROPERTIESはい作成する UDF の種類に応じて異なる関数のプロパティ。詳細については、Java UDF を参照してください。