Mongodb - 删除数组字段中所有元素的正确方法?

我正在寻找从 Mongodb 中的数组字段(跨所有文档)中删除所有元素的正确方法 - 这些似乎是等效的,建议这样做:(或者可能是其他方式?)

db.collection.update({}, { $pull : { 'myArray': {} }}, {multi:true} )

db.collection.update({}, { $set : {'myArray': [] }} , {multi:true} )

最佳答案

$set 变体会更快,因为 $pull 必须对数组进行计算。实际上,我什至不确定它是否会起作用,因为您并没有真正删除查询中的任何元素。

https://stackoverflow.com/questions/17860080/

相关文章:

javascript - 如果 .find() mongoose 没有找到任何东西,请执行某些操作

javascript - 如何在 MongoDB 中查询引用的对象?

node.js - 当 mongodb 的好处应该是无模式时,为什么 mongoose 使用模式?

python - pymongo-如何为字段以及其他查询参数设置不同的值

mongodb - 为什么不用mongodb?

mongodb - 使用 Mongo 集合中的特殊字符

mongodb - 在 mongodb 中删除重复文档的最快方法

node.js - Node.js 上 MongoDB 连接的最佳实践是什么?

python - 如何将 MongoDB 查询转换为 JSON?

c# - Mongodb -- 使用 c# 驱动程序包含或排除某些元素