الدوال المرجعية

دوال المراجع

يعمل النوع 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(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