के साथ मिलने के बाद गिनती ऑपरेशन को कॉल करने के लिए मैं MongoDB 3.0 का उपयोग कर रहा हूं। लगता है photos
नामित दस्तावेजों का एक सेट है, इसकी संरचनाmongodb जावा ड्राइवर
{"_id" : 1, photographer: "jack"}
database.getCollection("photos")
साथ, MongoDB एक MongoCollection
वस्तु है, जो पर मैं विधि count()
संख्या दस्तावेजों लौटे प्राप्त करने के लिए वापस आ जाएगी है।
हालांकि, जब मैं विशिष्ट स्थितियों के साथ प्रश्न पूछता हूं। उदाहरण के लिए आईडी 100 की तुलना में छोटे वाले दस्तावेज़ ढूंढने:
photosCollections.find(Document.parse("{_id : {$lt : 100}}"))
ऊपर find
विधि हमेशा एक कर्सर जो एक count()
समारोह प्रदान नहीं करता है वापस आ जाएगी। तो मैं कैसे जान सकता हूं कि कितने दस्तावेज़ लौटे? मैं कमांड लाइन पर पता है, मैं
db.photos.find({_id : {$lt : 100}}).count()
बेशक
उपयोग कर सकते हैं, मैं iterator के माध्यम से जाने के लिए और अपने आप को दस्तावेजों की संख्या की गणना कर सकते हैं। हालांकि मुझे यह वास्तव में बेकार लगता है। मुझे आश्चर्य है कि क्या मोंगोडीबी जावा ड्राइवर find()
विधि द्वारा लौटाए गए दस्तावेजों की संख्या को गिनने के लिए ऐसी कार्यक्षमता प्रदान करता है? यदि नहीं, तो निर्णय के पीछे क्या कारण है?
हाँ, गिनती() विधि MongoDB 2.0 में प्रदान की गई थी, लेकिन MongoDB 3.0 में हटा दिया गया था। मुझे नहीं पता कि क्या कारण है ...... –
@EnsomHodder http://mongodb.github.io/mongo-java-driver/3.0/driver/getting-started/quick-tour/ यूआरएल में 3.0 नोट करें । परीक्षण, काम करता है। –
क्वेरीबिल्डर मौजूद नहीं है – PedroD