Literals

תיאור

מחזירה מסמכים מקבוצה קבועה של אובייקטים מוגדרים מראש של מסמכים.

בדרך כלל משתמשים בשלב הזה כדי לבדוק שלבים אחרים בנפרד, אבל אפשר להשתמש בו גם כקלט לתנאי הצטרפות.

דוגמאות

Node.js

const results = await db.pipeline()
  .literals({ name: "joe", age: 10 }, { name: "bob", age: 30 }, { name: "alice", age: 40 })
  .where(field("age").lessThan(35))
  .execute();

התנהגות

אפשר להשתמש בשלב literals(...) רק בתור השלב הראשון בצינור (או בצינור משנה). סדר המסמכים שמוחזרים מה-literals(...) זהה לסדר שבו הם מוגדרים.

הערכים המילוליים הם הנפוצים ביותר, אבל אפשר גם להעביר ביטויים, שיוערכו ויוחזרו. כך אפשר לבדוק התנהגות שונה של שאילתות או ביטויים בלי ליצור קודם נתוני בדיקה.

לדוגמה, בדוגמה הבאה אפשר לראות איך בודקים במהירות את הפונקציה length(...) על כמה קבוצות בדיקה קבועות:

Node.js

const results = await db.pipeline()
  .literals({ x: constant("foo-bar-baz").length() }, { x: constant("bar").length() })
  .execute();

...

[
  { x: 11 },
  { x: 3 }
]