MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

Mongodb में .aggregate का उपयोग करके findOne के बराबर क्या है?

एक नमूने पर विचार करें names संग्रह:

{ _id: 1, name: "Jack", favoriteColor: "blue" },
{ _id: 2, name: "James", favoriteColor: "red" },
{ _id: 3, name: "John", favoriteColor: "blue" }

और findOne . का उपयोग करके निम्नलिखित तीन क्वेरी चलाएँ :

db.names.findOne( { _id: 1 } )
db.names.findOne()
db.names.findOne( { favoriteColor : "blue" } )

परिणाम तीन प्रश्नों के लिए समान है:

{ "_id" : 1, "name" : "Jack", "favoriteColor" : "blue" }


समतुल्य क्वेरी क्रमशः एकत्रीकरण का उपयोग करती हैं निम्नलिखित हैं, एक ही परिणाम के साथ:

db.names.aggregate( [
  { $match: { _id: 1 } },
] )

db.names.aggregate( [
  { $limit: 1 }
] )


db.names.aggregate( [
  { $match: { "favoriteColor" : "blue" } },
  { $limit: 1 }
] )


db.collection.findOne परिभाषा कहती है -

findOne . के साथ यदि कोई दस्तावेज़ नहीं मिलता है तो यह null लौटाता है . लेकिन एक एकत्रीकरण एक कर्सर लौटाता है, और आप कर्सर विधियां परिणाम पर।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. नेवले के साथ अनेक से अनेक

  2. मोंगो:मैच कुल क्वेरी में तारीखों पर ध्यान नहीं दिया जा रहा है

  3. मोंगोडब कुंजी के साथ काम करने वाले किसी भी काम में . या $?

  4. Mongodb में $all पैरामीटर ObjectId सूची के साथ काम नहीं करता है

  5. क्लाइंट नियंत्रक (MEAN.JS) से मोंगो क्वेरी पैरामीटर निर्दिष्ट करना