वर्तमान में स्वीकृत उत्तर आपके सरणी पर सटीक मिलान सुनिश्चित नहीं करता है, बस आकार समान है और सरणी क्वेरी सरणी के साथ कम से कम एक आइटम साझा करती है।
उदाहरण के लिए, क्वेरी
db.coll.find({ "hobbies": { "$size" : 2, "$in": [ "2", "1", "5", "hamburger" ] } });
उस स्थिति में उपयोगकर्ता कौशिक को अभी भी वापस कर देगा।
सटीक मिलान के लिए आपको $size
. को संयोजित करने की आवश्यकता है $all
. के साथ , इस तरह:
db.coll.find({ "hobbies": { "$size" : 2, "$all": [ "2", "1" ] } });
लेकिन ध्यान रखें कि यह आपकी मात्रा और डेटा की संरचना के आधार पर एक बहुत महंगा ऑपरेशन हो सकता है। चूंकि MongoDB सम्मिलित सरणियों के क्रम को स्थिर रखता है, आप DB में सम्मिलित करते समय सरणियों को क्रमबद्ध क्रम में सुनिश्चित करने के साथ बेहतर किराया दे सकते हैं, ताकि आप क्वेरी करते समय एक स्थिर क्रम पर भरोसा कर सकें।