রেফারেন্স ফাংশন

রেফারেন্স ফাংশন

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: স্লাইসের শুরুর ইনডেক্স (০-ভিত্তিক)। নেগেটিভ হলে, এটি রেফারেন্সের শেষ থেকে অফসেট।
  • length: স্লাইসে অন্তর্ভুক্ত করার জন্য সেগমেন্টের সংখ্যা।

উদাহরণ:

ref offset length reference_slice(ref, offset, length)
a/1/b/2/c/3 ১ লিটার 2L b/2/c/3
a/1/b/2/c/3 ০ লিটার 2L a/1/b/2
a/1/b/2/c/3 -2L 2L c/3