Fusionne les deux objets MAP d'entrée, input1 et input2, pour produire un nouvel objet MAP. Les clés du nouveau MAP correspondent à l'union des clés des deux MAP initiaux. La valeur associée à chaque clé est calculée par la fonction func.
Syntaxe
<K, V1, V2, V3> map<K, V3> map_zip_with(map<K, V1> <input1>, map<K, V2> <input2>, function<K, V1, V2, V3> <func>)
Paramètres
input1 et input2 : obligatoires. Objets MAP. Dans la notation
map<K, V>,Kreprésente la clé etVla valeur de l'objet MAP.func : obligatoire. Fonction acceptant trois paramètres d'entrée : la clé du MAP, la valeur correspondante dans input1 et la valeur correspondante dans input2. Si une clé est absente de input1 ou de input2, le paramètre correspondant transmis à func prend la valeur NULL.
Valeur de retour
Renvoie une valeur du type défini par func.
Exemples
--返回{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));
Cet exemple utilise l'opérateur ->. Pour plus d'informations sur les fonctions Lambda utilisant ->, consultez la section Lambda functions.
Fonctions connexes
La fonction MAP_ZIP_WITH fait partie des fonctions de types complexes. Pour découvrir d'autres fonctions de traitement des données de types complexes (telles que ARRAY, MAP, STRUCT et JSON), reportez-vous à la section Complex type functions.