عملکردهای نقشه
| نام | شرح |
MAP
|
مقدار نقشه را از مجموعهای از جفتهای کلید-مقدار میسازد |
MAP_GET
|
مقدار را در نقشه با کلید مشخصشده برمیگرداند |
MAP_SET
|
نسخهای از نقشه را با مجموعهای از کلیدهای بهروزشده برمیگرداند |
MAP_REMOVE
|
نسخهای از نقشه را با مجموعهای از کلیدهای حذفشده برمیگرداند |
MAP_MERGE
|
مجموعهای از نقشهها را باهم ادغام میکند. |
CURRENT_CONTEXT
|
بافت کنونی را بهصورت نقشه برمیگرداند. |
MAP_KEYS
|
آرایهای از همه کلیدها را در نقشه برمیگرداند. |
MAP_VALUES
|
آرایهای از همه مقادیر را در نقشه برمیگرداند. |
MAP_ENTRIES
|
آرایهای از جفتهای کلید-مقدار یک نقشه را برمیگرداند. |
نقشه
نحو:
map(key: STRING, value: ANY, ...) -> MAP
شرح:
نقشهای از مجموعهای از جفتهای کلید-مقدار میسازد.
MAP_GET
نحو:
map_get(map: ANY, key: STRING) -> ANY
شرح:
مقدار را در نگاشت با کلید مشخصشده برمیگرداند. اگر key در نقشه وجود نداشته باشد یا اگر آرگومان map از نوع MAP نباشد، مقدار ABSENT را برمیگرداند.
Node.js
const result = await db.pipeline() .collection("books") .select( field("awards").mapGet("pulitzer").as("hasPulitzerAward") ) .execute();
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();
پایتون
from google.cloud.firestore_v1.pipeline_expressions import Field result = ( client.pipeline() .collection("books") .select(Field.of("awards").map_get("pulitzer").as_("hasPulitzerAward")) .execute() )
جاوا
Pipeline.Snapshot result = firestore .pipeline() .collection("books") .select(mapGet(field("awards"), "pulitzer").as("hasPulitzerAward")) .execute() .get();
رفتن
snapshot := client.Pipeline(). Collection("books"). Select(firestore.Fields( firestore.MapGet(firestore.FieldOf("awards"), "pulitzer").As("hasPulitzerAward"), )). Execute(ctx)
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
محتوای ۲ نقشه یا بیشتر را ادغام میکند. اگر چند نقشه مقادیر متناقض داشته باشند، از آخرین مقدار استفاده میشود.
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"}] |