Categorias:

Funções de dados semiestruturados e estruturados (Mapa)

MAP_DELETE

Retorna um MAP baseado em um MAP existente com uma ou mais chaves removidas.

Sintaxe

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

Argumentos

map

O mapa que contém a chave a ser removida.

keyN

A chave a ser omitida do objeto retornado.

Retornos

Retorna um MAP que contém o conteúdo do mapa de entrada (origem) com uma ou mais chaves removidas.

Notas de uso

  • O tipo da expressão-chave deve corresponder ao tipo da chave do mapa. Se o tipo for VARCHAR, os tipos poderão ter comprimentos diferentes.

  • Os valores da chave que não são encontrados no mapa são ignorados.

Exemplos

Remova dois pares chave-valor de um mapa contendo três pares chave-valor:

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                                                     |
| }                                                            |
+--------------------------------------------------------------+