دوال المراجع
يعمل النوع REFERENCE كـ "مؤشر" إلى مستندات أخرى في قاعدة البيانات (أو
حتى قواعد بيانات أخرى). تتيح الدوال التالية معالجة هذا النوع
أثناء تنفيذ طلب البحث.
| الاسم | الوصف |
COLLECTION_ID
|
تعرض هذه الدالة معرّف المجموعة الفرعية في المرجع المحدّد |
DOCUMENT_ID
|
تعرض هذه الدالة معرّف المستند في المرجع المحدّد |
PARENT
|
عرض المرجع الرئيسي |
REFERENCE_SLICE
|
تعرض هذه الدالة مجموعة فرعية من المقاطع من المرجع المحدّد |
COLLECTION_ID
البنية:
collection_id(ref: REFERENCE) -> STRING
الوصف:
تعرض هذه الدالة رقم تعريف المجموعة الفرعية لـ REFERENCE المحدّد.
أمثلة:
ref |
collection_id(ref) |
|---|---|
users/user1 |
"users" |
users/user1/posts/post1 |
"posts" |
DOCUMENT_ID
البنية:
document_id(ref: REFERENCE) -> ANY
الوصف:
تعرض هذه الدالة معرّف المستند الخاص بـ REFERENCE المحدّد.
أمثلة:
ref |
document_id(ref) |
|---|---|
users/user1 |
"user1" |
users/user1/posts/post1 |
"post1" |
PARENT
البنية:
parent(ref: REFERENCE) -> REFERENCE
الوصف:
تعرض هذه الدالة المرجع الرئيسي REFERENCE للمرجع المحدّد، أو NULL إذا كان المرجع
هو المرجع الجذر.
أمثلة:
ref |
parent(ref) |
|---|---|
/ |
NULL |
users/user1 |
/ |
users/user1/posts/post1 |
users/user1 |
REFERENCE_SLICE
البنية:
reference_slice(ref: REFERENCE, offset: INT, length: INT) -> REFERENCE
الوصف:
REFERENCE هي قائمة من صفوف (collection_id, document_id)، وتتيح هذه الدالة عرض تلك القائمة، تمامًا مثل array_slice(...).
تعرض هذه الدالة REFERENCE جديدًا يمثّل مجموعة فرعية من شرائح ref المحدّد.
-
offset: فهرس البداية (يبدأ من 0) للشريحة. إذا كانت القيمة سالبة، تكون إزاحة من نهاية المرجع. -
length: عدد الأجزاء التي يجب تضمينها في الشريحة.
أمثلة:
ref |
offset |
length |
reference_slice(ref, offset, length) |
|---|---|---|---|
a/1/b/2/c/3 |
1 لتر | 2 لتر | b/2/c/3 |
a/1/b/2/c/3 |
0 لتر | 2 لتر | a/1/b/2 |
a/1/b/2/c/3 |
-2L | 2 لتر | c/3 |