Reference Functions Reference

פונקציות של הפניה

הסוג 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 ‫1L ‫2L b/2/c/3
a/1/b/2/c/3 0L ‫2L a/1/b/2
a/1/b/2/c/3 ‪-2L ‫2L c/3

המאמרים הבאים