2017-08-07 92 views
0

有沒有辦法用mongodb來批量插入,但是選擇插入和更新時應該做什麼。 例如:有條件的mongodb upsert

我在mongodb的本文檔:

  1. {name:"david", last_name:"family_name", published:true}

現在到達一個新的文件,是這樣的:

  • {name:"david", last_name:"family_name_changed", published:false}
  • 現在我想要替換DB(文檔1) 中只會更新last_name字段(或任何其他字段)的文檔,但我不希望它更新已發佈的字段。 (永遠)

    這是怎麼回事?

    謝謝

    回答

    0

    您可以使用$set更新特定領域,比如:

    db.<name of your collection>.update(<query>, 
    { 
        $set: 
        { 
         last_name: <value to set> 
        } 
    }, { multi: true }); 
    
    +0

    嘿,感謝您的幫助。但問題是我不想知道哪些特定字段需要更新......只有我想要做的事情是能夠更新整個文檔,但只保留少量字段,即使它們出現在我想更新的新文件... –