Funzioni della mappa

Funzioni della mappa

Nome Descrizione
MAP Crea un valore della mappa da una serie di coppie chiave-valore
MAP_GET Restituisce il valore in una mappa data una chiave specificata
MAP_SET Restituisce una copia di una mappa con una serie di chiavi aggiornate
MAP_REMOVE Restituisce una copia di una mappa con una serie di chiavi rimosse
MAP_MERGE Unisce una serie di mappe.
CURRENT_CONTEXT Restituisce il contesto corrente come mappa.
MAP_KEYS Restituisce un array di tutte le chiavi in una mappa.
MAP_VALUES Restituisce un array di tutti i valori in una mappa.
MAP_ENTRIES Restituisce un array di coppie chiave-valore di una mappa.

MAP

Sintassi:

map(key: STRING, value: ANY, ...) -> MAP

Descrizione:

Crea una mappa da una serie di coppie chiave-valore.

MAP_GET

Sintassi:

map_get(map: ANY, key: STRING) -> ANY

Descrizione:

Restituisce il valore in una mappa data una chiave specificata. Restituisce un valore ABSENT se key non esiste nella mappa o se l'argomento map non è un 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

Sintassi:

map_set(map: MAP, key: STRING, value: ANY, ...) -> MAP

Descrizione:

Restituisce una copia del valore map con i contenuti aggiornati da una serie di coppie chiave-valore.

Se il valore fornito viene risolto in un valore assente, la chiave associata viene rimossa dalla mappa.

Se l'argomento map non è un MAP, restituisce un valore assente.

MAP_REMOVE

Sintassi:

map_remove(map: MAP, key: STRING...) -> MAP

Descrizione:

Restituisce una copia del valore map con una serie di chiavi rimosse.

MAP_MERGE

Sintassi:

map_merge(maps: MAP...) -> MAP

Unisce i contenuti di due o più mappe. Se più mappe hanno valori in conflitto, viene utilizzato l'ultimo valore.

CURRENT_CONTEXT

Sintassi:

current_context() -> MAP

Restituisce una mappa costituita da tutti i campi disponibili nel punto di esecuzione corrente.

MAP_KEYS

Sintassi:

map_keys(map: MAP) -> ARRAY<STRING>

Descrizione:

Restituisce un array contenente tutte le chiavi del valore map.

MAP_VALUES

Sintassi:

map_values(map: MAP) -> ARRAY<ANY>

Descrizione:

Restituisce un array contenente tutti i valori del valore map.

MAP_ENTRIES

Sintassi:

map_entries(map: MAP) -> ARRAY<MAP>

Descrizione:

Restituisce un array contenente tutte le coppie chiave-valore nel valore map.

Ogni coppia chiave-valore avrà la forma di una mappa con due voci, k e v.

Esempi:

map map_entries(map)
{} []
{"foo" : 2L} [{"k": "foo", "v" : 2L}]
{"foo" : "bar", "bar" : "foo"} [{"k": "foo", "v" : "bar" }, {"k" : "bar", "v": "foo"}]