Calcule l'union de plusieurs objets MAP.
Syntaxe
map<K, V> map_concat([string <mapDupKeyPolicy>,] map<K, V> <a>, map<K, V> <b>[,...])
Paramètres
-
mapDupKeyPolicy : facultatif. Type STRING. Définit la gestion des clés en double. Valeurs possibles :
exception : renvoie une erreur en cas de clé en double.
last_win : en cas de clé en double, la dernière valeur écrase les précédentes.
Définissez également ce paramètre au niveau de la session via le paramètre
odps.sql.map.key.dedup.policy, par exemple avec la commandeset odps.sql.map.key.dedup.policy=exception;. La valeur par défaut est last_win si aucun paramétrage n'est effectué.RemarqueMaxCompute privilégie la valeur du paramètre mapDupKeyPolicy de la fonction. Si ce paramètre n'est pas configuré, MaxCompute utilise la valeur du paramètre
odps.sql.map.key.dedup.policy. a、b : obligatoires. Objets MAP. Les types de données de tous les objets MAP doivent être identiques. Dans
map<K, V>,KetVreprésentent respectivement la clé et la valeur de l'objet MAP.
Valeur de retour
Renvoie un type MAP. Règles de retour :
Si un objet MAP ou une clé d'un objet MAP est NULL, la fonction renvoie
NULLou génère une erreur.La fonction renvoie une erreur si les types de données des objets MAP diffèrent.
Exemples
--返回{1:a, 2:b, 3:c}。
select map_concat(map(1, 'a', 2, 'b'), map(3, 'c'));
--返回{1:a, 2:d, 3:c}。
select map_concat('last_win', map(1, 'a', 2, 'b'), map(3, 'c'), map(2, 'd'));
Fonctions associées
La fonction MAP_CONCAT fait partie des fonctions de type complexe. Pour plus d'informations sur le traitement des données de types complexes (telles que ARRAY, MAP, STRUCT et JSON), consultez la rubrique Complex type functions.