Fungsi peta

Fungsi Peta

Nama Deskripsi
MAP Membuat nilai peta dari serangkaian key-value pair
MAP_GET Menampilkan nilai dalam peta berdasarkan kunci yang ditentukan
MAP_SET Menampilkan salinan peta dengan serangkaian kunci yang diperbarui
MAP_REMOVE Menampilkan salinan peta dengan serangkaian kunci yang dihapus
MAP_MERGE Menggabungkan serangkaian peta.
CURRENT_CONTEXT Menampilkan konteks saat ini sebagai peta.
MAP_KEYS Menampilkan array semua kunci dalam peta.
MAP_VALUES Menampilkan array semua nilai dalam peta.
MAP_ENTRIES Menampilkan array key-value pair dari peta.

MAP

Sintaksis:

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

Deskripsi:

Membuat peta dari serangkaian key-value pair.

MAP_GET

Sintaksis:

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

Deskripsi:

Menampilkan nilai dalam peta berdasarkan kunci yang ditentukan. Menampilkan nilai ABSENT jika key tidak ada di peta, atau jika argumen map bukan 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

Sintaksis:

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

Deskripsi:

Menampilkan salinan nilai map yang isinya telah diperbarui oleh serangkaian key-value pair.

Jika nilai yang diberikan di-resolve ke nilai kosong, kunci terkait akan dihapus dari peta.

Jika argumen map bukan MAP, nilai kosong akan ditampilkan.

MAP_REMOVE

Sintaksis:

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

Deskripsi:

Menampilkan salinan nilai map dengan serangkaian kunci yang dihapus.

MAP_MERGE

Sintaksis:

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

Menggabungkan isi 2 peta atau lebih. Jika beberapa peta memiliki nilai yang bertentangan, nilai terakhir akan digunakan.

CURRENT_CONTEXT

Sintaksis:

current_context() -> MAP

Menampilkan peta yang terdiri dari semua kolom yang tersedia di titik eksekusi saat ini.

MAP_KEYS

Sintaksis:

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

Deskripsi:

Menampilkan array yang berisi semua kunci dari nilai map.

MAP_VALUES

Sintaksis:

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

Deskripsi:

Menampilkan array yang berisi semua nilai dari nilai map.

MAP_ENTRIES

Sintaksis:

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

Deskripsi:

Menampilkan array yang berisi semua key-value pair dalam nilai map.

Setiap key-value pair akan berbentuk peta dengan dua entri, yakni k dan v.

Contoh:

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