الدوال العامة

الدوال العامة

الاسم الوصف
CURRENT_DOCUMENT تعرض هذه الدالة المستند الذي تتم معالجته حاليًا في سلسلة البيانات.
CONCAT تعمل هذه الدالة على دمج قيمتين أو أكثر من النوع نفسه.
LENGTH تحسب هذه الدالة طول String أو Bytes أو Array أو Vector أو Map.
REVERSE تعكس هذه الدالة ترتيب String أو Bytes أو Array.

CURRENT_DOCUMENT

البنية:

current_document() -> MAP

الوصف:

تؤدي هذه الدالة إلى عرض خريطة تتضمّن جميع الحقول المحدّدة في النطاق الحالي. ويكون ذلك مفيدًا عند دمج مستندات متعدّدة أو تجميعها معًا أو عند الرغبة في فحص أسماء الحقول في المستند بشكل ديناميكي.

على سبيل المثال، للحصول على قائمة بالمستندات مجمّعة حسب حقل معيّن:

Node.js

const cities = await db.pipeline()
  .collection("/restaurants")
  .aggregate({
    groups: [ field("location.state").as("state") ],
    accumulators: [ arrayAgg(currentDocument().as("restaurants")) ]
   })
  .execute();

CONCAT

البنية:

concat[T <: STRING | BYTES | ARRAY](values:T ...) -> T

الوصف:

تعمل هذه الدالة على دمج قيمتين أو أكثر من النوع نفسه.

أمثلة:

values concat(values)
"abc"، "def" "abcdef"
[1, 2]، [3, 4] [1, 2, 3, 4]
b"abc"، b"def" b"abcdef"
"abc"، [1,2,3]، "ghi" خطأ
[1,2,3] خطأ
"abc"، null null
Node.js
concat(constant("Author ID: "), field("authorId"));

Web

concat(constant("Author ID: "), field("authorId"));
Swift
let displayString = Constant("Author ID: ").concat([Field("authorId")])

Kotlin

val displayString = constant("Author ID: ").concat(field("authorId"))

Java

Expression displayString = constant("Author ID: ").concat(field("authorId"));
Python
Constant.of("Author ID: ").concat(Field.of("authorId"))

LENGTH

البنية:

length[T <: STRING | BYTES | ARRAY | VECTOR | MAP](value: T) -> INT64

الوصف:

تحسب هذه الدالة طول قيمة String أو Bytes أو Array أو Vector أو Map.

أمثلة:

value length(value)
"hello" 5
[1, 2, 3, 4] 4
b"abcde" 5
null null
1 خطأ

REVERSE

البنية:

reverse[T <: STRING | BYTES | ARRAY](value: T) -> T

الوصف:

تعكس هذه الدالة ترتيب قيمة String أو Bytes أو Array.

أمثلة:

value reverse(value)
"hello" "olleh"
[1, 2, 3] [3, 2, 1]
b"abc" b"cba"
23 خطأ
null null