মঙ্গোডিবি: কোন ক্ষেত্রের অস্তিত্ব দ্বারা একটি নথি খুঁজে পাও?


173

"যেখানে নথিতে ক্ষেত্র নেই" শর্ত নির্দিষ্ট করার কোনও উপায় আছে কি?

উদাহরণস্বরূপ, আমি কেবলমাত্র এই 2 এর মধ্যে প্রথমটি খুঁজে পেতে চাই কারণ এতে "দাম" ক্ষেত্র নেই।

{"fruit":"apple", "color":"red"}


{"fruit":"banana", "color":"yellow", "price":"2.00"}


3
আপনি চেষ্টা করতেও পারেনdb.mycollection.find({ "price" : null })
— অশুভ রিকো

উত্তর:


329

ব্যবহার করে দেখুন $existsঅপারেটর:

db.mycollection.find({ "price" : { "$exists" : false } })

এবং এর ডকুমেন্টেশন দেখুন ।


12
+1 টি। তবে মনে রাখবেন যে এ জাতীয় প্রশ্নগুলি সূচকগুলি ব্যবহার করতে পারে না এবং বড় সংগ্রহগুলিতে খুব ধীর হতে পারে।
— mnemosyn

10
দুর্দান্ত পয়েন্ট - ধন্যবাদ। আমি জানি এই ক্যাভ্যাটটি মোংগোডিবি সংস্করণ ১.৮.x এবং এর আগে সত্য; তবে আমি ভেবেছিলাম যে $ বিদ্যমান ক্ষেত্রের সীমাবদ্ধতার সাথে অনুসন্ধানগুলি এখন 2.0 সংস্করণে সূচকগুলি ব্যবহার করতে পারে ...?
— দাম্পায়ার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.