cari

Rumah  >  Soal Jawab  >  teks badan

Nilai dokumen dalam mongodb disimpan dalam tatasusunan Bagaimana hendak menolak data baharu ke tatasusunan semasa mengemas kini?

db.col.insert({
    name: 'kad',
    tags: ['mongodb', 'database', 'NoSQL'],
})

Saya kini mempunyai data baharu 'mysql' yang perlu ditambahkan pada tatasusunan yang sepadan dengan teg.

db.col.update({'name':'kad'},{$set:{'tags':'mysql'}}) 这样不是相当于覆盖了原来的数据么

Saya mahu hasilnya tags:['mongodb','database','NoSQL','mysql']

某草草某草草2805 hari yang lalu673

membalas semua(2)saya akan balas

  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-02 09:26:04

    Sila rujuk

    db.col.update({name : "kad"}, { $push : { tags : "mysql"}})

    Juga sila rujuk dokumentasi rasmi:

    https://docs.mongodb.com/manu...

    Cadangan: Baca lebih lanjut dokumentasi MongoDB;

    balas
    0
  • 滿天的星座

    滿天的星座2017-05-02 09:26:04

    Gunakan addToSet

    db.col.update({"name":"kad"},{$addToSet:{"tags":"mysql"}});
    

    atau gunakan tolak

    db.col.update({"name":"kad"},{$push:{"tags":"redis"}});
    

    Perbezaan antara kedua-duanya ialah addToSet hanya akan menambahnya apabila ia tidak wujud dalam tatasusunan, ia tidak akan menambahnya lagi Push akan memasukkan nilai yang dimasukkan tidak kira sama ada ia berada dalam tatasusunan tatasusunan, iaitu, nilai pendua boleh dimasukkan.

    balas
    0
  • Batalbalas