دوال الخريطة
| الاسم | الوصف |
MAP
|
تنشئ هذه الدالة قيمة خريطة من سلسلة من أزواج المفاتيح والقيم |
MAP_GET
|
تعرض هذه الدالة القيمة في خريطة معيّنة استنادًا إلى مفتاح محدّد |
MAP_SET
|
تعرض هذه الدالة نسخة من خريطة تتضمّن سلسلة من المفاتيح المعدَّلة |
MAP_REMOVE
|
تعرض هذه الدالة نسخة من خريطة مع إزالة سلسلة من المفاتيح |
MAP_MERGE
|
لدمج سلسلة من الخرائط معًا |
CURRENT_CONTEXT
|
تعرض هذه الدالة السياق الحالي كخريطة. |
MAP_KEYS
|
تعرض هذه الدالة مصفوفة لجميع المفاتيح في خريطة. |
MAP_VALUES
|
تعرض مصفوفة لجميع القيم في خريطة. |
MAP_ENTRIES
|
تعرض مصفوفة من أزواج المفتاح والقيمة لخريطة. |
English: MAP Arabic: English: MAP
البنية:
map(key: STRING, value: ANY, ...) -> MAP
الوصف:
تنشئ هذه الدالة خريطة من سلسلة من أزواج المفاتيح والقيم.
MAP_GET
البنية:
map_get(map: ANY, key: STRING) -> ANY
الوصف:
تعرض هذه الدالة القيمة في خريطة معيّنة استنادًا إلى مفتاح محدّد. تعرض هذه الدالة قيمة ABSENT إذا لم تكن السمة key متوفّرة في الخريطة، أو إذا لم تكن الوسيطة map من نوع MAP.
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();
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() )
Java
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"}] |