MongoDB Remove函数的3个常见用法

时间:2021-09-09 22:02:49

在MongoDB中,db.collection.remove()方法用来从文档中删除文档。可以从一个集合中删除所有文档,删除匹配一个条件的所有文档,或者限制操作只删除一条文档。

删除所有文档:

删除集合中的所有文档,需要传递一个空的query文档{}给remove()方法。remove()方法不会删除索引。下面是从inventory集合中删除所有文档的例子:

 

复制代码 代码如下:
db.inventory.remove({})

 

删除集合中所有的文档,drop()方法可能更有效,drop()方法会删除整个集合,包括索引,然后重新创建集合和建立索引。

删除匹配条件的文档:

删除匹配删除条件的文档,需要调用remove()方法并传递一个<query>参数。下面的例子从inventory集合中删除所有type字段值为food的文档:

 

复制代码 代码如下:
db.inventory.remove( { type : "food" } )

 

对于大的删除,有效的方法可能是将需要保留的文档复制到一个新集合中,然后再原来的集合上使用drop()方法删除集合。

删除一条匹配条件的文档:

删除一条文档,调用remove(),将justOne参数的值设置为true或者1。下面是从inventory集合中删除一条type字段值为food的文档的例子:

复制代码 代码如下:
db.inventory.remove( { type : "food" }, 1 )

 

按特定的顺序删除一条文档,使用findAndModify()方法。