Referensi Fungsi Referensi

Fungsi Referensi

Jenis REFERENCE bertindak sebagai "penunjuk" ke dokumen lain dalam database (atau bahkan database lain). Fungsi berikut memungkinkan manipulasi jenis ini selama eksekusi kueri.

Nama Deskripsi
COLLECTION_ID Menampilkan ID koleksi leaf dalam referensi yang diberikan
DOCUMENT_ID Menampilkan ID dokumen dalam referensi yang diberikan
PARENT Menampilkan referensi induk
REFERENCE_SLICE Menampilkan subset segmen dari referensi yang diberikan

COLLECTION_ID

Sintaksis:

collection_id(ref: REFERENCE) -> STRING

Deskripsi:

Menampilkan ID koleksi leaf dari REFERENCE yang diberikan.

Contoh:

ref collection_id(ref)
users/user1 "users"
users/user1/posts/post1 "posts"

DOCUMENT_ID

Sintaksis:

document_id(ref: REFERENCE) -> ANY

Deskripsi:

Menampilkan ID dokumen dari REFERENCE yang diberikan.

Contoh:

ref document_id(ref)
users/user1 "user1"
users/user1/posts/post1 "post1"

PARENT

Sintaksis:

parent(ref: REFERENCE) -> REFERENCE

Deskripsi:

Menampilkan REFERENCE induk dari referensi yang diberikan atau NULL jika ref sudah menjadi referensi root.

Contoh:

ref parent(ref)
/ NULL
users/user1 /
users/user1/posts/post1 users/user1

REFERENCE_SLICE

Sintaksis:

reference_slice(ref: REFERENCE, offset: INT, length: INT) -> REFERENCE

Deskripsi:

REFERENCE adalah daftar tuple (collection_id, document_id) dan fungsi ini membuat tampilan daftar tersebut dapat ditampilkan, seperti array_slice(...).

Menampilkan REFERENCE baru yang merupakan subset dari segmen ref yang diberikan.

  • offset: Indeks awal (berbasis 0) dari slice. Jika negatif, nilai ini adalah offset dari akhir referensi.
  • length: Jumlah segmen yang akan disertakan dalam slice.

Contoh:

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

Langkah berikutnya