gpt4 book ai didi

java - 将文档从一个集合复制(如果存在则更新)到另一个集合

转载 作者:太空宇宙 更新时间:2023-11-04 12:08:48 24 4
gpt4 key购买 nike

我想通过java将文档从一个mongodb集合复制到另一个集合(或更新,如果存在)。

我不想追加现有集合的每个字段,然后插入另一个字段。我怎样才能做到这一点?

这里有两个集合,tempnationaltemp 只有一个集合,我必须将其复制到 national 或更新(如果存在)。

MongoCursor<Document> cursor = db.getCollection("temp").find().iterator();
try {
Document doc = new Document(cursor.next());
Document new_doc = new Document("$set",doc);
doc.append("booking_id",cursor.next().get("booking_id"));
MongoCursor<Document> cursor1 = db.getCollection("national").find(doc).iterator();
Bson filter = Filters.eq("booking_id", args);
Bson update = Filters.elemMatch("booking_id", filter);
UpdateOptions options = new UpdateOptions().upsert(true);
national.updateOne(filter, new_doc, options);
}
finally {
cursor.close();
}

最佳答案

如果你想用 Doc1 替换 Doc2,你可以使用replaceOne()

replaceOne() 使用替换文档替换集合中与过滤器匹配的第一个匹配文档。

https://docs.mongodb.com/v3.2/reference/method/db.collection.replaceOne/

关于java - 将文档从一个集合复制(如果存在则更新)到另一个集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40069760/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com