4.3 删除文档
在mongodb中,如果我们需要在mongodb的集合中删除一条或者多条数据,即删除一个或者多个文档,需要使用remove()方法。该方法语法如下:
db.[集合名].remove( <query>, <justOne> )
参数query代表,被删除文档的查询条件,此参数可以使用我们在查询中学到的所有的方法;参数justOne表示是否只删除一个文档。该值默认为false表示删除所有满足条件的文档。如果我们同时省略了这两个参数,将会删除该集合内的所有文档。
{ "_id" : 2, "ary" : [ 2, 3 ] }
> db.user.find()
{ "_id" : 1, "name" : "user1","age" : 1 }
{ "_id" : 2, "name" : "user2","age" : 2 }
{ "_id" : 3, "name" : "user3","age" : 3 }
{ "_id" : 4, "name" : "user4","age" : 4 }
{ "_id" : 5, "name" : "user5","age" : 5 }
{ "_id" : 6, "sex" : "nan" }
> db.user.remove({name:/user*/i},1)
> db.user.find()
{ "_id" : 2, "name" : "user2","age" : 2 }
{ "_id" : 3, "name" : "user3","age" : 3 }
{ "_id" : 4, "name" : "user4","age" : 4 }
{ "_id" : 5, "name" : "user5","age" : 5 }
{ "_id" : 6, "sex" : "nan" }
如果我们直接调用了remove()方法删除了集合中的所有元素,该集合也不会被删除。我们只有调用集合的drop()方法,该集合才会被删除。例如我们user集合中已经没有数据了,我们可以使用如下代码删除集合。
db.user.drop()