लाइक की तुलना लाइक से करें
_id
मोंगो में कुंजी (डिफ़ॉल्ट रूप से) एक स्ट्रिंग नहीं है - यह एक मोंगो ऑब्जेक्ट आईडी है।
सार्थक परिणाम प्राप्त करने के लिए आपको उसी प्रकार से तुलना करने की आवश्यकता है:
var ObjectId = require('mongodb').ObjectID;
var oid = new ObjectId();
db.things.find(_id: {$gt: oid});
mongoexport फ़ाइलें न पढ़ें
मोंगो निर्यात फ़ाइलें इस तरह दिखती हैं:
{ "_id" : { "$oid" : "4f876b00c56da1fa6a000030" }, ...
यह ऑब्जेक्ट आईडी का एक जेसन प्रतिनिधित्व है। वास्तव में डीबी से पूछताछ करते समय मोंगो नहीं चाहता कि आप उस तरह के वाक्यविन्यास का उपयोग करें। यह काम नहीं करेगा:
# will not work
db.things.find("_id.$oid": {$gt: "string"});
एक स्ट्रिंग के रूप में आईडी
यदि आपके पास एक स्ट्रिंग के रूप में आईडी है, तो आप यह करेंगे:
var ObjectId = require('mongodb').ObjectID;
var str = "123456789012345678901234";
var oid = new ObjectId(str);
db.things.find(_id: {$gt: oid});
आईडी को आंशिक . के रूप में स्ट्रिंग
यदि आपके पास जो स्ट्रिंग है वह वैध ओड नहीं है (24 वर्ण लंबा नहीं), तो आपको केवल मोंगो से अपवाद मिलेगा - या आपके ड्राइवर के आधार पर, एक नया ओआईडी। यदि आपके पास आंशिक ऑब्जेक्ट आईडी है तो आप वैध ओआईडी बनाने के लिए 0s के साथ पैड कर सकते हैं और इसलिए आंशिक ऑब्जेक्ट आईडी द्वारा खोजने की अनुमति देते हैं। उदा.:
var ObjectId = require('mongodb').ObjectID;
var oid = new ObjectId(str + "0000");
db.things.find(_id: {$gt: oid});