cari

Rumah  >  Soal Jawab  >  teks badan

Saya ingin bertanya sama ada terdapat fungsi dalam MongoDB untuk mencari dokumen dalam kelompok dan kemudian mengemas kini nilai medan tertentu dalam dokumen?

Kini terdapat keperluan untuk menggunakan MongoDB untuk mencari dokumen dan mengemas kini medan dalam dokumen pada masa yang sama, iaitu, menggunakan satu arahan untuk menyelesaikan carian dan kemas kini (atomicity).
Mongo mempunyai kaedah yang serupa untuk satu dokumen, seperti operasi carian dan kemas kini FindAndModify, yang bersifat atom, tetapi hanya mempengaruhi satu dokumen.
Saya ingin bertanya sama ada terdapat sebarang operasi yang boleh mencari berbilang dokumen dan mengemas kini medan dokumen dengan sewajarnya.

为情所困为情所困2788 hari yang lalu662

membalas semua(2)saya akan balas

  • phpcn_u1582

    phpcn_u15822017-05-02 09:27:48

    Kemas kini Mongoose boleh dikendalikan dalam kelompok Atribut berbilang kemas kini ditetapkan kepada benar, http://www.nonb.cn/blog/nodej...

    balas
    0
  • 漂亮男人

    漂亮男人2017-05-02 09:27:48

    1. Atomicity dalam MongoDB:

    1. Ia adalah atom untuk satu dokumen FindAnyModify hanya mengendalikan satu dokumen, jadi ia adalah atomik;

    2. Untuk operasi pada berbilang dokumen, setiap operasi pada satu dokumen adalah atom, tetapi keseluruhan operasi bukan atom Semasa operasi, mungkin terdapat operasi daripada dokumen lain.

    Tetapi dalam kebanyakan senario, keatoman satu dokumen sudah memenuhi keperluan

    Jika anda perlu mencapai atomicity untuk pengendalian berbilang dokumen, anda perlu melaksanakannya dengan kod/reka bentuk anda sendiri.

    2. Untuk keperluan nyata anda, anda sebenarnya boleh menggunakan pelbagai pilihan kemas kini, atau terus menggunakan updateMany.

    db.collection.updateMany()
    
    db.collection.update(,{multi : true})
    

    Untuk rujukan.

    Sayangi MongoDB!

    balas
    0
  • Batalbalas