Map Functions
| שם | תיאור |
MAP
|
יוצר ערך של מפה מסדרה של צמדי מפתח/ערך |
MAP_GET
|
מחזירה את הערך במפה בהינתן מפתח שצוין |
MAP_SET
|
מחזירה עותק של מפה עם סדרה של מפתחות מעודכנים |
MAP_REMOVE
|
מחזירה עותק של מפה עם סדרה של מפתחות שהוסרו |
MAP_MERGE
|
מיזוג של סדרת מפות. |
CURRENT_CONTEXT
|
מחזירה את ההקשר הנוכחי כמפה. |
MAP_KEYS
|
הפונקציה מחזירה מערך של כל המפתחות במפה. |
MAP_VALUES
|
הפונקציה מחזירה מערך של כל הערכים במיפוי. |
MAP_ENTRIES
|
הפונקציה מחזירה מערך של זוגות של מפתח וערך של מפה. |
MAP
תחביר:
map(key: STRING, value: ANY, ...) -> MAP
תיאור:
יוצרת מפה מסדרה של צמדי מפתח/ערך.
MAP_GET
תחביר:
map_get(map: ANY, key: STRING) -> ANY
תיאור:
הפונקציה מחזירה את הערך במפה בהינתן מפתח מסוים. הפונקציה מחזירה ערך ABSENT אם key לא קיים במפה, או אם הארגומנט map לא מסוג 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
תחביר:
map_set(map: MAP, key: STRING, value: ANY, ...) -> MAP
תיאור:
הפונקציה מחזירה עותק של הערך 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.
כל צמד מפתח/ערך יהיה בצורה של מפה עם שני רשומות, k ו-v.
לדוגמה:
map |
map_entries(map) |
|---|---|
| {} | [] |
| {"foo" : 2L} | [{"k": "foo", "v" : 2L}] |
| {"foo" : "bar", "bar" : "foo"} | [{"k": "foo", "v" : "bar" }, {"k" : "bar", "v": "foo"}] |