Funções de Mapa
| Nome | Descrição |
MAP
|
Cria um valor de mapa com base em uma série de pares de chave-valor. |
MAP_GET
|
Retorna o valor em um mapa com base em uma chave especificada. |
MAP_SET
|
Retorna uma cópia de um mapa com uma série de chaves atualizadas. |
MAP_REMOVE
|
Retorna uma cópia de um mapa com uma série de chaves removidas. |
MAP_MERGE
|
Mescla uma série de mapas. |
CURRENT_CONTEXT
|
Retorna o contexto atual como um mapa. |
MAP_KEYS
|
Retorna uma matriz de todas as chaves em um mapa. |
MAP_VALUES
|
Retorna uma matriz de todos os valores em um mapa. |
MAP_ENTRIES
|
Retorna uma matriz de pares de chave-valor de um mapa. |
MAP
Sintaxe:
map(key: STRING, value: ANY, ...) -> MAP
Descrição:
Cria um mapa com base em uma série de pares de chave-valor.
MAP_GET
Sintaxe:
map_get(map: ANY, key: STRING) -> ANY
Descrição:
Retorna o valor em um mapa com base em uma chave especificada. Retorna um valor ABSENT se key não existir no mapa ou se o argumento map não for um MAP.
Web
const result = await execute(db.pipeline() .collection("books") .select( field("awards").mapGet("pulitzer").as("hasPulitzerAward") ) );
Swift
let result = try await db.pipeline() .collection("books") .select([ Field("awards").mapGet("pulitzer").as("hasPulitzerAward") ]) .execute()
Kotlin
val result = db.pipeline() .collection("books") .select( field("awards").mapGet("pulitzer").alias("hasPulitzerAward") ) .execute()
Java
Task<Pipeline.Snapshot> result = db.pipeline() .collection("books") .select( field("awards").mapGet("pulitzer").alias("hasPulitzerAward") ) .execute();
Python
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("books") .select(Field.of("awards").map_get("pulitzer").as_("hasPulitzerAward")) .execute() )
MAP_SET
Sintaxe:
map_set(map: MAP, key: STRING, value: ANY, ...) -> MAP
Descrição:
Retorna uma cópia do valor map com o conteúdo atualizado por uma série de pares de chave-valor.
Se o valor fornecido for resolvido como um valor ausente, a chave associada será removida do mapa.
Se o argumento map não for um MAP, vai retornar um valor ausente.
MAP_REMOVE
Sintaxe:
map_remove(map: MAP, key: STRING...) -> MAP
Descrição:
Retorna uma cópia do valor map com uma série de chaves removidas.
MAP_MERGE
Sintaxe:
map_merge(maps: MAP...) -> MAP
Mescla o conteúdo de dois ou mais mapas. Se vários mapas tiverem valores conflitantes, o último valor será usado.
CURRENT_CONTEXT
Sintaxe:
current_context() -> MAP
Retorna um mapa com todos os campos disponíveis no ponto de execução atual.
MAP_KEYS
Sintaxe:
map_keys(map: MAP) -> ARRAY<STRING>
Descrição:
Retorna uma matriz que contém todas as chaves do valor map.
MAP_VALUES
Sintaxe:
map_values(map: MAP) -> ARRAY<ANY>
Descrição:
Retorna uma matriz que contém todos os valores de map.
MAP_ENTRIES
Sintaxe:
map_entries(map: MAP) -> ARRAY<MAP>
Descrição:
Retorna uma matriz que contém todos os pares de chave-valor no valor map.
Cada par de chave-valor estará na forma de um mapa com duas entradas, k e v.
Exemplos:
map |
map_entries(map) |
|---|---|
| {} | [] |
| {"foo" : 2L} | [{"k": "foo", "v" : 2L}] |
| {"foo" : "bar", "bar" : "foo"} | [{"k": "foo", "v" : "bar" }, {"k" : "bar", "v": "foo"}] |