mongodb - MongoDB - 从文档中删除一行
问题描述
我有一个带有单个 DOC 的集合,我将其用作“事实来源”,并希望能够为其删除和添加值:
{
"_id" : ObjectId("61012ada8d2ccb252be87551"),
"language" : "english",
"gui-ipv6" : "disable",
"gui-certificates" : "enable",
"gui-custom-language" : "disable",
"gui-display-hostname" : "disable",
"admin-https-ssl-versions" : "tlsv1-1 tlsv1-2 tlsv1-3",
}
我希望能够删除一行,例如语言。每当我尝试这样做时,它都会删除整个 DOC,因为我的查询与整个 DOC 匹配,例如:
db.my_collection.remove({'language': {$exists:true}})
关于如何解决这个问题的任何想法?
谢谢你。
解决方案
使用未设置的运算符删除字段 https://docs.mongodb.com/manual/reference/operator/update/unset/
db.my_collection.update(
{},
{ $unset: { language: "" },
false, true }
)
推荐阅读
- asmjit - asmjit getgpArg()、getxmmArg() 和 make() 替换
- angularjs - 停止从通过库动态创建的 DOM 元素的事件传播
- javascript - 无法从 JS 中的 JSON 对象生成 html 表
- npm - 为什么每次我尝试输入我的发布者名称时,我的 npm 都说我需要查看用户权限?
- excel - 为什么我的 vba 循环每次都跳到我的外部下一个?
- excel - 将字段添加到 Excel,并在 Access 中导出子表单。
- python - 合并每个 id 的后半部分行,但每个 id 的行不同
- unit-testing - 断言属性已在模拟类中设置
- javascript - Vue2获取图像src
- ruby-on-rails - 更新每个 jsonb 值