想通過批量更新通過UpdateOptions設定為TRUE的方式塞大批量的資料進MONGODB,有A,B,C三個欄位。
通過A欄位查詢,如果沒有值則塞入A,B,C 。 如果A查詢有值則更新C欄位 ,想通過批量更新方式
UpdateOneModel<Document> uom = new UpdateOneModel<Document>(queryDocument,updateDocument,new UpdateOptions().upsert(true));
但這樣的話有問題,B值要么無法賦值要么會被更新掉。
因為是大批量的資料處理,在考慮性能性的前提下 不考慮下面處理方式
先查詢mongodb無A值的資料進行插入 ,再講其他資料更新操作。
剛接觸mongodb不久,求各位大賢幫忙看看有沒有不影響性能的情況下比較好點的解決方式。
uj5u.com熱心網友回復:
List<WriteModel<Document>> requests = new ArrayList<WriteModel<Document>>();UpdateOneModel<Document> uom = new UpdateOneModel<Document>(queryDocument,updateDocument,new UpdateOptions().upsert(true));
requests.add(uom);
BulkWriteResult bulkWriteResult = coll.bulkWrite(requests);
目前用的這種批量處理資料的,但沒法解決上面的問題
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/112378.html
標籤:MongoDB
上一篇:PostgreSQL免安裝綠色版懶人包,只有10M。帶控制面板,帶SQL管理工具。
下一篇:同時為多個表新增相同欄位
