我正在尋找一種方法來使用mongoose
一次更新多個文檔,並返回所有已修改的文檔。我試着在update()中設置multi:true
。它正在更新所有匹配的文件,但沒有任何返回。然後我嘗試了findOneAndUpdate()。即使有許多匹配的文件,它也只更新和返回一個文件。是的,函數名稱本身告訴,它只會更新一個,但我仍然嘗試過。我無法在findOneAndUpdate()
中設置像multi:true
這樣的選項。如何做呢?在此先感謝更新多個文檔並返回所有更新的文檔
2
A
回答
2
目前我不認爲它可能在MongoDB中更新多個文檔,並在同一個查詢中返回所有更新的文檔。
在貓鼬,所述findOneAndUpdate()
基於MongoDB中的天然findAndModify()
方法。
如果檢查findAndModify()
方法的官方documentation,其指出 -
的findAndModify指令修改,並返回一個單一的文件。
儘管查詢可能會匹配多個文檔,findAndModify將只選擇一個文檔進行修改。
因此,您無法使用findAndModify
更新多個文檔。在另一方面
update()
或updateMany()
方法更新許多文件與multi
標誌,但它只返回WriteResult它看起來像這樣 -
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
相關問題
- 1. 更新多個文檔
- 2. 多個更新子文檔
- 3. Mongodb中的更新和返回文檔
- 4. Mongodb - 返回所有更新文檔的_id數組
- 5. 更新文檔
- 6. 多子文檔更新
- 7. 更新並返回新文檔mongodb angularjs 2打字稿
- 8. MongoDB的UPSERT在子文檔中數組並返回更新的子文檔
- 9. 貓鼬更新所有文檔
- 10. Sequelize文檔更新
- 11. 更新Couchdb文檔
- 12. pysolr更新文檔
- 13. 更新文檔內,
- 14. Solr文檔更新
- 15. 用貓鼬更新文檔(更新文檔屬性的屬性)
- 16. 更新現有文檔的新字段
- 17. 使用update_by_query API更新多個文檔?
- 18. 使用elasticsearch更新多個文檔1.7.5
- 19. MongoDB中更新多個文檔
- 20. DocumentDB更新多個文檔失敗
- 21. 查詢文檔,將其更新並返回給MongoDB
- 22. 如何在更換整個文檔時更新mongodb文檔?
- 23. Lucene.Net - 返回所有文檔
- 24. solr delta import用所更新的文件替換所有文檔
- 25. MongoDB php更新返回現有文檔的錯誤
- 26. 的MongoDB:更新子文檔
- 27. Nhibernate的更新文檔?
- 28. 在嵌套對象更新上更新多個文檔
- 29. MongoDB中的多文檔更新問題
- 30. 在MongoDB中的文檔多次更新
感謝@Jyotman澄清。然後我會去做兩個不同的查詢。 – RaR