Kaedah mengambil atau mendapatkan data dari pangkalan data MongoDB dilakukan dengan menggunakan pertanyaan. Ketika melakukan operasi permintaan, seseorang juga dapat menggunakan kriteria atau kondisi yang dapat digunakan untuk mengambil data tertentu dari pangkalan data.
MongoDB menyediakan fungsi yang disebut db.collection.find () yang digunakan untuk pengambilan dokumen dari pangkalan data MongoDB.
Sepanjang tutorial ini, anda akan melihat bagaimana fungsi ini digunakan dalam pelbagai cara untuk mencapai tujuan pengambilan dokumen.
Operasi pertanyaan asas
Operasi pertanyaan asas merangkumi operasi mudah seperti mendapatkan semua dokumen dalam koleksi MongoDB. Mari kita lihat contoh bagaimana kita dapat mencapainya.
Semua kod kami akan dijalankan di shell perintah MongoDB JavaScript. Pertimbangkan bahawa kami mempunyai koleksi bernama 'Karyawan' dalam pangkalan data MongoDB kami dan kami melaksanakan perintah di bawah ini.
Penjelasan Kod:
- Pekerja adalah nama koleksi dalam pangkalan data MongoDB
- Perintah mencari adalah fungsi bawaan yang digunakan untuk mengambil dokumen dalam koleksi.
Sekiranya arahan itu berjaya dilaksanakan, Output berikut akan ditunjukkan
Pengeluaran:
Hasilnya menunjukkan semua dokumen yang terdapat dalam koleksi.
Kami juga dapat menambahkan kriteria untuk pertanyaan kami sehingga kami dapat mengambil dokumen berdasarkan keadaan tertentu.
Contoh 1
Mari kita lihat beberapa contoh bagaimana kita dapat mencapainya.
db.Employee.find({EmployeeName : "Smith"}).forEach(printjson);
Penjelasan Kod:
- Di sini kami ingin mencari Karyawan yang namanya "Smith" dalam koleksi, oleh itu kami memasukkan kriteria penapis sebagai EmployeeName: "Smith"
Sekiranya arahan itu berjaya dilaksanakan, Output berikut akan ditunjukkan
Pengeluaran:
Hasilnya menunjukkan bahawa hanya dokumen yang mengandungi "Smith" sebagai Nama Pegawai yang dikembalikan.
Contoh 2
Sekarang, mari kita lihat contoh kod lain yang menggunakan kriteria carian lebih besar daripada carian. Apabila kriteria ini disertakan, ia benar-benar mencari dokumen-dokumen di mana nilai bidangnya lebih besar daripada nilai yang ditentukan.
db.Employee.find({Employeeid : {$gt:2}}).forEach(printjson);
Penjelasan Kod:
- Di sini kita ingin mencari untuk semua Karyawan yang idnya lebih besar dari 2. $ gt disebut sebagai operator seleksi pertanyaan, dan apa yang dimaksudkan hanyalah menggunakan ungkapan yang lebih besar daripada.
Sekiranya arahan itu berjaya dilaksanakan, Output berikut akan ditunjukkan
Pengeluaran:
Semua dokumen di mana id Pekerja melebihi 2 dikembalikan.