Map 関数

Map 関数

名前 説明
MAP 一連の Key-Value ペアからマップ値を構築します。
MAP_GET 指定されたキーに対応するマップ内の値を返します。
MAP_SET 更新された一連のキーを含むマップのコピーを返します。
MAP_REMOVE 一連のキーが削除されたマップのコピーを返します。
MAP_MERGE 一連のマップをマージします。
CURRENT_CONTEXT 現在のコンテキストをマップとして返します。
MAP_KEYS マップ内のすべてのキーの配列を返します。
MAP_VALUES マップ内のすべての値の配列を返します。
MAP_ENTRIES マップの Key-Value ペアの配列を返します。

地図

構文:

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

説明:

一連の Key-Value ペアからマップを構築します。

MAP_GET

構文:

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

説明:

指定されたキーに対応するマップ内の値を返します。key がマップに存在しない場合、または map 引数が MAP でない場合は、ABSENT 値を返します。

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

構文:

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

説明:

一連の Key-Value ペアで内容が更新された map 値のコピーを返します。

指定された値が欠損値に解決される場合、関連付けられているキーがマップから削除されます。

map 引数が MAP でない場合、欠損値を返します。

MAP_REMOVE

構文:

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

説明:

一連のキーが削除された map 値のコピーを返します。

MAP_MERGE

構文:

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

2 つ以上のマップの内容をマージします。複数のマップに競合する値がある場合は、最後の値が使用されます。

CURRENT_CONTEXT

構文:

current_context() -> MAP

現在の実行ポイントで使用可能なすべてのフィールドから構成されるマップを返します。

MAP_KEYS

構文:

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

説明:

map 値のすべてのキーを含む配列を返します。

MAP_VALUES

構文:

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

説明:

map 値のすべての値を含む配列を返します。

MAP_ENTRIES

構文:

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

説明:

map 値のすべての Key-Value ペアを含む配列を返します。

各 Key-Value ペアは、kv の 2 つのエントリを含むマップの形式になります。

例:

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