लिटरल वैल्यू

ब्यौरा

यह फ़ंक्शन, पहले से तय किए गए दस्तावेज़ ऑब्जेक्ट के सेट से दस्तावेज़ों को दिखाता है.

आम तौर पर, इस स्टेज का इस्तेमाल अन्य स्टेज को अलग-अलग करके टेस्ट करने के लिए किया जाता है. हालांकि, इसका इस्तेमाल जॉइन की शर्तों के लिए इनपुट के तौर पर भी किया जा सकता है.

उदाहरण

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 }
]