すべてのプロダクト
Search
ドキュメントセンター

MaxCompute:MAP_ZIP_WITH

最終更新日:Jan 17, 2025

Map input1とMap input2を1つのマップにマージします。 新しいマップのキーは、2つの入力マップのキーの和集合である。 新しいマップの各キーの値は、funcを使用して計算されます。

構文

<K, V1, V2, V3> map<K, V3> map_zip_with(map<K, V1> <input1>, map<K, V2> <input2>, function<K, V1, V2, V3> <func>)

パラメーター

  • input1およびinput2: 必須です。 これらのパラメータはマップを指定する。 map<K, V>KVは、マップのキーと値を指定します。

  • func: 必須です。 funcは、キーに対応する3つの入力パラメータ、input1のキーに対応する値、およびinput2のキーに対応する値で構成されます。 キーがinput1またはinput2に存在しない場合は、funcのキーに対応する値をnullで置き換えます。

戻り値

funcで定義されたデータ型のデータが返されます。

-- The return value is {1:[1, 1, 4], 2:[2, 2, 5], 3:[3, null, null], 4:[4, null, 7]}. 
select map_zip_with(map(1, 1, 2, 2, 3, null), map(1, 4, 2, 5, 4, 7), (k, v1, v2) -> array(k, v1, v2));
説明

この例では、ハイフンとクロージングアングルブラケット (->) の組み合わせが使用されます。 Lambda関数でハイフンとクロージングアングルブラケット (->) の組み合わせを使用する方法の詳細については、「Lambda関数」をご参照ください。

関連関数

MAP_ZIP_WITHは複合型関数です。 ARRAY、MAP、STRUCT、JSONなどの複雑なデータ型のデータを処理するために使用される関数の詳細については、複合型関数.