Catégories :

Fonctions de données semi-structurées et structurées (Carte)

MAP_DELETE

Renvoie une MAP basée sur une MAP existante avec une ou plusieurs clés supprimées.

Syntaxe

MAP_DELETE( <map>, <key1> [, <key2>, ... ] )
Copy

Arguments

map

La carte qui contient la clé à supprimer.

keyN

La clé à omettre de la carte renvoyée.

Renvoie

Renvoie une MAP qui comporte le contenu de la carte d’entrée (source) avec une ou plusieurs clés supprimées.

Notes sur l’utilisation

  • Le type de l’expression de clé doit correspondre au type de la clé de la carte. Si le type est VARCHAR, les types peuvent être de longueurs différentes.

  • Les valeurs de clé qui ne sont pas trouvées dans la carte sont ignorées.

Exemples

Retirer deux paires clé-valeur d’une carte contenant trois paires clé-valeur :

SELECT MAP_DELETE({'a':1,'b':2,'c':3}::MAP(VARCHAR,NUMBER),'a','b');
Copy
+--------------------------------------------------------------+
| MAP_DELETE({'A':1,'B':2,'C':3}::MAP(VARCHAR,NUMBER),'A','B') |
|--------------------------------------------------------------|
| {                                                            |
|   "c": 3                                                     |
| }                                                            |
+--------------------------------------------------------------+