Bagaimanakah saya mengalih keluar objek daripada tatasusunan dalam MongoDB?

Susan Sarandon
Lepaskan: 2024-11-01 02:29:02
asal
315 orang telah melayarinya

How do I remove an object from an array in MongoDB?

MongoDB: Mengalih keluar Objek daripada Tatasusunan

Dalam MongoDB, anda boleh mengalih keluar objek daripada tatasusunan yang dibenamkan dalam dokumen menggunakan $ operator tarik. Jika anda ingin mengalih keluar objek tertentu daripada tatasusunan, anda perlu menyediakan pertanyaan yang sepadan dengan objek yang tepat.

Pertimbangkan dokumen berikut:

<code class="json">{
   _id: 5150a1199fac0e6910000002,
   name: 'some name',
   items: [{
      id: 23,
      name: 'item name 23'
   },{
      id: 24,
      name: 'item name 24'
   }]
}</code>
Salin selepas log masuk

Untuk mengalih keluar item dengan id : 23 daripada tatasusunan item, gunakan perintah berikut:

db.mycollection.update(
    { '_id': ObjectId("5150a1199fac0e6910000002") }, 
    { $pull: { items: { id: 23 } } },
    false, // Upsert
    true, // Multi
);
Salin selepas log masuk

Arahan ini mengemas kini dokumen dengan mengalih keluar item daripada tatasusunan. Pertanyaan menentukan dokumen menggunakan medan _id dan operator $pull menyasarkan tatasusunan item. Dalam operasi $pull, anda boleh menentukan pertanyaan untuk memadankan objek yang akan dialih keluar. Dalam kes ini, kami memadankan objek dengan id: 23.

Pelaksanaan Mongoose/Node.js

Dalam Mongoose, anda boleh mengalih keluar objek daripada tatasusunan menggunakan kaedah pull():

<code class="javascript">const Model = mongoose.model('Model', new mongoose.Schema({
  items: [{
    id: Number,
    name: String
  }]
}));

Model.update(
  { '_id': '5150a1199fac0e6910000002' },
  { $pull: { items: { id: 23 } } },
  { multi: true }, // Update all matching documents
  (err, result) => { if (!err) console.log(result); }
);</code>
Salin selepas log masuk

Kod ini akan mengalih keluar item dengan id: 23 daripada tatasusunan item semua dokumen yang sepadan dengan _id yang ditentukan.

Atas ialah kandungan terperinci Bagaimanakah saya mengalih keluar objek daripada tatasusunan dalam MongoDB?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan