MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Menghapus elemen dari array di mongodb

$pop operator akan menghapus elemen pertama atau terakhir dari larik, yang mungkin belum tentu benar.

Jika Anda menginginkan elemen tertentu, Anda dapat $pull item dengan kriteria yang ditentukan:

   model.registerCompany.findOneAndUpdate({companyKey:"a key"},
    {$pull:{onlineEmployees:"John"}},

Anda harus memastikan nilai dalam array unik, untuk $pull menghapus setiap elemen yang cocok dengan nama 'John'.

Jika nilai identik ada dalam array, Anda perlu menggunakan $unset dan $ operator posisi untuk menyetel nilai elemen target ke null (sayangnya $unset tidak akan menghapus elemen) lalu gunakan $pull untuk menghapus elemen dengan null nilai. Untuk melakukan itu, Anda harus memastikan nilai yang valid tidak boleh null . Dalam hal ini, kodenya bisa seperti:

model.registerCompany.findOneAndUpdate({companyKey:"a key", onlineEmployees:"John"},{ $unset: { "onlineEmployees.$" : '' } } ) 
model.registerCompany.findOneAndUpdate({companyKey:"a key"},{ $pull: { "onlineEmployees" : null } } ) 



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Kesalahan:Kesalahan jaringan saat mencoba menjalankan perintah 'saslStart' di Host 'localhost:27017'

  2. MongoDB $mul

  3. Apakah GridFS cukup cepat dan andal untuk produksi?

  4. Replika MongoDB tidak menetapkan primer, perlu memaksa primer baru

  5. Setel beberapa bidang dengan satu kueri pembaruan