Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MongoDB

MongoDB में _id द्वारा दस्तावेज़ खोजें

MongoDB में ObjectId द्वारा दस्तावेज़ खोजना

MongoDB में प्रत्येक दस्तावेज़ का एक यूनिक _id फ़ील्ड होता है (डिफ़ॉल्ट रूप से ObjectId)। find() मेथड के साथ ObjectId का उपयोग करके विशिष्ट दस्तावेज़ को खोजा जा सकता है।

सिंटैक्स

db.collection.find({ "_id": yourObjectId })

सैंपल डेटा बनाना

> db.findByIdDemo.insertOne({"Value":10});
{ "acknowledged" : true, "insertedId" : ObjectId("5e07158925ddae1f53b621fc") }
> db.findByIdDemo.insertOne({"Value":500});
{ "acknowledged" : true, "insertedId" : ObjectId("5e07158c25ddae1f53b621fd") }
> db.findByIdDemo.insertOne({"Value":1000});
{ "acknowledged" : true, "insertedId" : ObjectId("5e07159125ddae1f53b621fe") }

सभी दस्तावेज़ देखना

> db.findByIdDemo.find();

आउटपुट:


विशिष्ट ObjectId द्वारा खोजें

> db.findByIdDemo.find({ "_id" : ObjectId("5e07158c25ddae1f53b621fd") });

आउटपुट:


महत्वपूर्ण नोट्स

  • ObjectId() कंस्ट्रक्टर आवश्यक है: स्ट्रिंग "5e07158c..." स्वचालित रूप से ObjectId में कनवर्ट नहीं होता
  • findOne() का उपयोग करें यदि केवल एक दस्तावेज़ अपेक्षित है (कर्सर के बजाय दस्तावेज़ सीधे लौटाता है)

ड्राइवर्स में उपयोग

// Node.js
const { ObjectId } = require('mongodb');
const doc = await collection.findOne({ _id: new ObjectId("5e07158c25ddae1f53b621fd") });

// Python
from bson.objectid import ObjectId
doc = collection.find_one({ "_id": ObjectId("5e07158c25ddae1f53b621fd") })

ObjectId संरचना

ObjectId 12-बाइट मान है जिसमें शामिल हैं:

  • 4 बाइट: टाइमस्टैम्प (सेकंड्स)
  • 5 बाइट: रैंडम वैल्यू (मशीन + प्रोसेस)
  • 3 बाइट: काउंटर
यही कारण है कि ObjectId लगभग क्रमिक होते हैं और टाइमस्टैम्प जानकारी रखते हैं।

findById() हेल्पर (कुछ ड्राइवर्स/ODM में)

// Mongoose
const doc = await Model.findById("5e07158c25ddae1f53b621fd");
  1. - MongoDB में डुप्लीकेट रिकॉर्ड कैसे खोजें

    MongoDB में डुप्लीकेट रिकॉर्ड खोजने के लिए एग्रीगेशन फ्रेमवर्क में $group, $match और $project का उपयोग करें। उदाहरण से समझें एक कलेक्शन बनाकर डुप्लीकेट नाम वाले डॉक्यूमेंट इन्सर्ट करते हैं: > db.findDuplicateRecordsDemo.insertOne({StudentFirstName: John}); > db.findDuplicateRecordsDemo.insertO

  1. - MongoDB में फ़ील्ड की अनुपस्थिति से दस्तावेज़ कैसे खोजें?

    MongoDB में फ़ील्ड की अनुपस्थिति से दस्तावेज़ खोजने के लिए, सिंटैक्स इस प्रकार है: db.yourCollectionName.find({ yourFieldName : { $exists : false } }).pretty(); उपरोक्त सिंटैक्स को समझने के लिए, एक दस्तावेज़ के साथ एक संग्रह बनाते हैं। दस्तावेज़ के साथ संग्रह बनाने की क्वेरी इस प्रकार है: > db.f

  1. MongoDB में कंसोल कैसे क्लियर करें? MongoDB में कंसोल कैसे क्लियर करें?

    MongoDB में कंसोल क्लियर करने के लिए, आप निम्न दो सिंटैक्स में से किसी का उपयोग कर सकते हैं। पहला सिंटैक्स कीबोर्ड शॉर्टकट का उपयोग है: Ctrl + L उपरोक्त कुंजी दबाने के बाद, आप MongoDB में कंसोल क्लियर कर सकते हैं। दूसरा सिंटैक्स इस प्रकार है: cls उपरोक्त सिंटैक्स को समझने के लिए, आइए उन्हें एक-एक क