関数呼び出し
説明
関数呼び出しは、組み込み関数またはユーザー定義関数を、引数を関数のパラメーターに割り当てた後に実行します。
Spark は、位置パラメーター呼び出しと名前付きパラメーター呼び出しの両方をサポートしています。
位置パラメーター呼び出し
各引数は、指定された位置で一致するパラメーターに割り当てられます。
この表記は、名前付きパラメーター呼び出しが必要であると明示的に文書化されていない限り、すべての関数で使用できます。
関数がオプションのパラメーターをサポートしている場合、引数が指定されていない末尾のパラメーターはデフォルト値が使用されます。
名前付きパラメーター呼び出し
引数は、関数によって公開されているパラメーター名を使用して、明示的にパラメーターに割り当てられます。
この表記は、多数のオプションのパラメーターを許可するため、位置パラメーター呼び出しが非現実的になる組み込み関数の選択されたサブセットに使用する必要があります。これらの関数では、先頭のパラメーターセットが位置によって割り当てられ、末尾のオプションのパラメーターセットが名前によって割り当てられる、混合呼び出しが許可される場合があります。
構文
function_name ( [ argExpr | table_argument ] [, ...]
[ namedParameter => [ argExpr | table_argument ] [, ...] )
table_argument
{ TABLE ( { table_name | query } )
[ table_partition ]
[ table_order ]
table_partitioning
{ WITH SINGLE PARTITION |
{ PARTITION | DISTRIBUTE } BY { partition_expr | ( partition_expr [, ...] ) } }
table_ordering
{ { ORDER | SORT } BY { order_by_expr | ( order_by_expr [, ...] } }
パラメータ
-
function_name
組み込み関数またはユーザー定義関数の名前。修飾されていない function_name を解決する場合、Spark はまず組み込み関数または一時関数を検討し、次に現在のスキーマの関数を検討します。
-
argExpr
関連付けられているパラメーターに暗黙的にキャストできる任意の式。
関数は、リテラル、定数式、または特定の値を強制するなど、引数に対してさらに制限を課す場合があります。
-
namedParameter
argExpr が割り当てられるパラメーターの修飾されていない名前。
名前付きパラメーター表記は、Python UDF および特定の組み込み関数でサポートされています。
-
table_argument
テーブルであるパラメーターの引数を指定します。
-
TABLE ( table_name )
名前で関数に渡すテーブルを識別します。
-
TABLE ( query )
クエリの結果を関数に渡します。
-
table-partitioning
オプションで、テーブル引数がパーティション分割されていることを指定します。指定しない場合、パーティション分割は Spark によって決定されます。
-
WITH SINGLE PARTITION
テーブル引数はパーティション分割されていません。
-
partition_expr
テーブル引数をパーティション分割する方法を定義する 1 つ以上の式。各式は、テーブル引数に存在する列、リテラル、パラメーター、変数、および決定論的な関数で構成できます。
-
table_ordering
オプションで、テーブル引数の各パーティションの結果行が関数に渡される順序を指定します。
デフォルトでは、順序は未定義です。
-
order_by_expr
1 つ以上の式。各式は、テーブル引数に存在する列、リテラル、パラメーター、変数、および決定論的な関数で構成できます。
-
-
-