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

MaxCompute:MAP_CONCAT

最終更新日:Jan 17, 2025

複数のマップの和集合を計算します。

構文

map<K, V> map_concat([string <mapDupKeyPolicy>,] map<K, V> <a>, map<K, V> <b>[,...])

パラメーター

  • mapDupKeyPolicy: オプション。 STRING型の値。 このパラメーターは、重複キーの処理に使用されるメソッドを指定します。 有効な値:

    • exception: エラーが返されます。

    • last_win: 後者のキーは前者のキーを上書きします。

    セッションレベルでodps.sql.map.key.de dup.policyパラメーターを指定して、重複キーの処理に使用されるメソッドを構成することもできます。 たとえば、odps.sql.map.key.de dup.policyを例外に設定できます。 このパラメーターを指定しない場合、デフォルト値last_winが使用されます。

    説明

    MaxComputeの動作実装は、mapDupKeyPolicyに基づいて決定されます。 mapDupKeyPolicyを指定しない場合、odps.sql.map.key.de dup.policyの値が使用されます。

  • aおよびb: 必須。 これらのパラメータはマップを指定する。 マップのキーは同じデータ型である必要があり、マップの値は同じデータ型である必要があります。 map<K, V>KVは、マップのキーと値を指定します。

戻り値

MAPタイプの値が返されます。 戻り値は、次のルールによって異なります。

  • マップがnullまたはマップのキーがnullの場合、nullまたはエラーが返されます。

  • 複数のマップのデータ型が異なる場合、エラーが返されます。

-- The return value is {1:a, 2:b, 3:c}. 
select map_concat(map(1, 'a', 2, 'b'), map(3, 'c'));
-- The return value is {1:a, 2:d, 3:c}. 
select map_concat('last_win', map(1, 'a', 2, 'b'), map(3, 'c'), map(2, 'd'));

関連関数

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