Rumah pangkalan data MongoDB Collection.find() sentiasa mengembalikan semua medan dalam MongoDB?

Collection.find() sentiasa mengembalikan semua medan dalam MongoDB?

Sep 08, 2023 am 09:13 AM

collection.find() 总是返回 MongoDB 的所有字段?

Anda boleh menggunakan sintaks berikut untuk mengembalikan medan tertentu daripada collection.find().

Kes 1 - Sintaks adalah seperti berikut -

db.yourCollectionName.find({},{"yourFieldName":1}).pretty();
Salin selepas log masuk

Nama medan di atas ditetapkan kepada 1 bermakna ia hanya akan mengembalikan medan tersebut. Jika ditetapkan kepada 0, ia mengembalikan semua medan kecuali medan ditetapkan kepada 0.

Kes 2 - Sintaks adalah seperti berikut -

db.yourCollectionName.find({},{"yourFieldName":0}).pretty();
Salin selepas log masuk

Untuk memahami sintaks di atas, mari kita buat koleksi menggunakan dokumen. Pertanyaan untuk mencipta koleksi menggunakan dokumen adalah seperti berikut -

> db.returnFieldInFindDemo.insertOne({"StudentName":"John","StudentAge":23,"TechnicalSubject":["MongoDB","MySQL"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8ebfe72f684a30fbdfd566")
}
> db.returnFieldInFindDemo.insertOne({"StudentName":"Mike","StudentAge":24,"TechnicalSubject":["Java","Python"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8ebffd2f684a30fbdfd567")
}
> db.returnFieldInFindDemo.insertOne({"StudentName":"Sam","StudentAge":22,"TechnicalSubject":["C","C++"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8ec00f2f684a30fbdfd568")
}
> db.returnFieldInFindDemo.insertOne({"StudentName":"Carol","StudentAge":20,"TechnicalSubject":["DataStructure","Algorithm"]});
{
   "acknowledged" : true,
   "insertedId" : ObjectId("5c8ec0292f684a30fbdfd569")
}
Salin selepas log masuk

Paparkan semua dokumen dalam koleksi dengan bantuan kaedah find(). Pertanyaannya adalah seperti berikut -

> db.returnFieldInFindDemo.find().pretty();
Salin selepas log masuk
Salin selepas log masuk

Di bawah ialah output -

{
   "_id" : ObjectId("5c8ebfe72f684a30fbdfd566"),
   "StudentName" : "John",
   "StudentAge" : 23,
   "TechnicalSubject" : [
      "MongoDB",
      "MySQL"
   ]
}
{
   "_id" : ObjectId("5c8ebffd2f684a30fbdfd567"),
   "StudentName" : "Mike",
   "StudentAge" : 24,
   "TechnicalSubject" : [
      "Java",
      "Python"
   ]
}
{
   "_id" : ObjectId("5c8ec00f2f684a30fbdfd568"),
   "StudentName" : "Sam",
   "StudentAge" : 22,
   "TechnicalSubject" : [
      "C",
      "C++"
   ]
}
{
   "_id" : ObjectId("5c8ec0292f684a30fbdfd569"),
   "StudentName" : "Carol",
   "StudentAge" : 20,
   "TechnicalSubject" : [
      "DataStructure",
      "Algorithm"
   ]
}
Salin selepas log masuk
Salin selepas log masuk

Kes 1 - Ini ialah pertanyaan di mana anda akan mengembalikan medan tertentu.

Pertanyaan adalah seperti berikut -

> db.returnFieldInFindDemo.find().pretty();
Salin selepas log masuk
Salin selepas log masuk

Output:

{
   "_id" : ObjectId("5c8ebfe72f684a30fbdfd566"),
   "StudentName" : "John",
   "StudentAge" : 23,
   "TechnicalSubject" : [
      "MongoDB",
      "MySQL"
   ]
}
{
   "_id" : ObjectId("5c8ebffd2f684a30fbdfd567"),
   "StudentName" : "Mike",
   "StudentAge" : 24,
   "TechnicalSubject" : [
      "Java",
      "Python"
   ]
}
{
   "_id" : ObjectId("5c8ec00f2f684a30fbdfd568"),
   "StudentName" : "Sam",
   "StudentAge" : 22,
   "TechnicalSubject" : [
      "C",
      "C++"
   ]
}
{
   "_id" : ObjectId("5c8ec0292f684a30fbdfd569"),
   "StudentName" : "Carol",
   "StudentAge" : 20,
   "TechnicalSubject" : [
      "DataStructure",
      "Algorithm"
   ]
}
Salin selepas log masuk
Salin selepas log masuk

Melihat pada contoh output di atas, saya telah memulakan medan "TechnicalSubject" kepada 1. Ini bermakna ia hanya akan mengembalikan medan "TechnicalSubject" daripada semua dokumen.

Kes 2

Kes 2

kuat> - Dalam kes kedua, jika anda menetapkan medan "TechnicalSubject" kepada 0, ini bermakna anda akan mendapat semua medan kecuali "TechnicalSubject".

Pertanyaan adalah seperti berikut -

> db.retunFieldInFindDemo.find({},{"TechnicalSubject":0}).pretty();
Salin selepas log masuk

Berikut ialah output:

{
   "_id" : ObjectId("5c8ebfe72f684a30fbdfd566"),
   "StudentName" : "John",
   "StudentAge" : 23
}
{
   "_id" : ObjectId("5c8ebffd2f684a30fbdfd567"),
   "StudentName" : "Mike",
   "StudentAge" : 24
}
{
   "_id" : ObjectId("5c8ec00f2f684a30fbdfd568"),
   "StudentName" : "Sam",
   "StudentAge" : 22
}
{
   "_id" : ObjectId("5c8ec0292f684a30fbdfd569"),
   "StudentName" : "Carol",
   "StudentAge" : 20
}
Salin selepas log masuk

Kes 3 - Seperti yang anda tahu jika anda hanya menggunakan find() maka ia akan mengembalikan semua medan.

Pertanyaan adalah seperti berikut -

> db.retunFieldInFindDemo.find();
Salin selepas log masuk

Berikut ialah output:

{ "_id" : ObjectId("5c8ebfe72f684a30fbdfd566"), "StudentName" : "John", "StudentAge" : 23, "TechnicalSubject" : [ "MongoDB", "MySQL" ] }
{ "_id" : ObjectId("5c8ebffd2f684a30fbdfd567"), "StudentName" : "Mike", "StudentAge" : 24, "TechnicalSubject" : [ "Java", "Python" ] }
{ "_id" : ObjectId("5c8ec00f2f684a30fbdfd568"), "StudentName" : "Sam", "StudentAge" : 22, "TechnicalSubject" : [ "C", "C++" ] }
{ "_id" : ObjectId("5c8ec0292f684a30fbdfd569"), "StudentName" : "Carol", "StudentAge" : 20, "TechnicalSubject" : [ "DataStructure", "Algorithm" ] }
Salin selepas log masuk

Atas ialah kandungan terperinci Collection.find() sentiasa mengembalikan semua medan dalam MongoDB?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1663
14
Tutorial PHP
1266
29
Tutorial C#
1239
24
Cara Menyiapkan Pengguna di MongoDB Cara Menyiapkan Pengguna di MongoDB Apr 12, 2025 am 08:51 AM

Untuk menyediakan pengguna MongoDB, ikuti langkah -langkah ini: 1. Sambungkan ke pelayan dan buat pengguna pentadbir. 2. Buat pangkalan data untuk memberikan akses pengguna. 3. Gunakan arahan CreateUser untuk membuat pengguna dan menentukan hak dan hak akses pangkalan data mereka. 4. Gunakan perintah getusers untuk memeriksa pengguna yang dibuat. 5. Secara pilihan menetapkan keizinan lain atau memberi kebenaran kepada pengguna ke koleksi tertentu.

Apakah alat untuk disambungkan ke mongoDB Apakah alat untuk disambungkan ke mongoDB Apr 12, 2025 am 06:51 AM

Alat utama untuk menyambung ke MongoDB adalah: 1. MongoDB shell, sesuai untuk melihat data dengan cepat dan melakukan operasi mudah; 2. Pemandu bahasa pengaturcaraan (seperti Pymongo, MongoDB Java Driver, MongoDB Node.js Driver), sesuai untuk pembangunan aplikasi, tetapi anda perlu menguasai kaedah penggunaan; 3. Alat GUI (seperti Robo 3T, Kompas) menyediakan antara muka grafik untuk pemula dan tontonan data cepat. Apabila memilih alat, anda perlu mempertimbangkan senario aplikasi dan susunan teknologi, dan memberi perhatian kepada konfigurasi rentetan sambungan, pengurusan kebenaran dan pengoptimuman prestasi, seperti menggunakan kolam dan indeks sambungan.

Cara Memulakan Mongodb Cara Memulakan Mongodb Apr 12, 2025 am 08:39 AM

Untuk memulakan pelayan MongoDB: Pada sistem UNIX, jalankan perintah Mongod. Pada tingkap, jalankan perintah mongod.exe. Pilihan: Tetapkan konfigurasi menggunakan pilihan - - - - - -Auth, atau --replset pilihan. Gunakan arahan Mongo untuk mengesahkan bahawa sambungan berjaya.

Cara Mengendalikan Urus Niaga di MongoDB Cara Mengendalikan Urus Niaga di MongoDB Apr 12, 2025 am 08:54 AM

Pemprosesan transaksi di MongoDB menyediakan penyelesaian seperti transaksi multi-dokumen, pengasingan snapshot, dan pengurus urus niaga luaran untuk melaksanakan tingkah laku urus niaga, memastikan pelbagai operasi dilaksanakan sebagai satu unit atom, memastikan atom dan pengasingan. Sesuai untuk aplikasi yang perlu memastikan integriti data, mencegah rasuah data operasi serentak, atau melaksanakan kemas kini atom dalam sistem yang diedarkan. Walau bagaimanapun, keupayaan pemprosesan urus niaga adalah terhad dan hanya sesuai untuk satu contoh pangkalan data. Urus niaga multi-dokumen hanya menyokong operasi membaca dan menulis. Pengasingan snapshot tidak memberikan jaminan atom. Mengintegrasikan pengurus urus niaga luaran juga memerlukan kerja pembangunan tambahan.

Mongodb vs. Oracle: Memilih pangkalan data yang sesuai untuk keperluan anda Mongodb vs. Oracle: Memilih pangkalan data yang sesuai untuk keperluan anda Apr 22, 2025 am 12:10 AM

MongoDB sesuai untuk data yang tidak berstruktur dan keperluan skalabilitas yang tinggi, sementara Oracle sesuai untuk senario yang memerlukan konsistensi data yang ketat. 1.MongoDB Flexibly menyimpan data dalam struktur yang berbeza, sesuai untuk media sosial dan Internet Perkara. 2. Model data berstruktur Oracle memastikan integriti data dan sesuai untuk urus niaga kewangan. 3.MongoDB skala secara mendatar melalui shards, dan skala Oracle secara menegak melalui RAC. 4.MongoDB mempunyai kos penyelenggaraan yang rendah, sementara Oracle mempunyai kos penyelenggaraan yang tinggi tetapi disokong sepenuhnya.

Perbezaan antara MongoDB dan pangkalan data relasi dan senario aplikasi Perbezaan antara MongoDB dan pangkalan data relasi dan senario aplikasi Apr 12, 2025 am 06:33 AM

Memilih MongoDB atau pangkalan data relasi bergantung kepada keperluan aplikasi. 1. Pangkalan data relasi (seperti MySQL) sesuai untuk aplikasi yang memerlukan integriti data yang tinggi dan konsistensi dan struktur data tetap, seperti sistem perbankan; 2. Pangkalan data NoSQL seperti MongoDB sesuai untuk memproses data besar-besaran, tidak berstruktur atau separa berstruktur dan mempunyai keperluan yang rendah untuk konsistensi data, seperti platform media sosial. Pilihan akhir perlu menimbang kebaikan dan keburukan dan membuat keputusan berdasarkan keadaan sebenar. Tidak ada pangkalan data yang sempurna, hanya pangkalan data yang paling sesuai.

Cara memilih mongodb dan redis Cara memilih mongodb dan redis Apr 12, 2025 am 08:42 AM

Pilih MongoDB atau Redis mengikut keperluan permohonan: MongoDB sesuai untuk menyimpan data kompleks, dan Redis sesuai untuk akses cepat ke pasangan nilai dan cache. MongoDB menggunakan model data dokumen, menyediakan penyimpanan berterusan, dan skalabiliti mendatar; Walaupun Redis menggunakan nilai utama untuk melaksanakan dengan baik dan kos efektif. Pilihan akhir bergantung kepada keperluan khusus aplikasi, seperti jenis data, keperluan prestasi, skalabilitas, dan kebolehpercayaan.

MongoDB vs. Oracle: Pemodelan Data dan Fleksibiliti MongoDB vs. Oracle: Pemodelan Data dan Fleksibiliti Apr 11, 2025 am 12:11 AM

MongoDB lebih sesuai untuk memproses data yang tidak berstruktur dan lelaran yang cepat, sementara Oracle lebih sesuai untuk senario yang memerlukan konsistensi data yang ketat dan pertanyaan kompleks. Model dokumen 1.MongoDB adalah fleksibel dan sesuai untuk mengendalikan struktur data kompleks. 2. Model hubungan Oracle adalah ketat untuk memastikan konsistensi data dan prestasi pertanyaan yang kompleks.

See all articles