有没有办法从集合中批量删除列表(List)的所有文档?
我正在考虑类似的事情: mongooperations.deleteAll(list);
它不一定是一个列表,只要是我可以收集文档并批量删除它们的任何集合,而不是总是删除单个文档。
最佳答案
以下是删除文档 _id
列表的查询。假设 _id
是数字,这有效:
List<Integer> ids = Arrays.asList(1, 2, 3, 4);
MongoOperations mongoOps = new MongoTemplate(MongoClients.create(), "testDB");
Query q = new Query(where("_id").in(ids));
List<Test> deletedDocs = mongoOps.findAllAndRemove(q, Test.class, "testColl");
// -or-
//List<Document> deletedDocs = mongoOps.findAllAndRemove(q, "testColl");
System.out.println(deletedDocs);
关于java - Mongo/Spring boot 从集合中删除列表中的所有文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60149034/