我只是想知道在单个请求中是否可以这样做?
特定
{
_id: 1,
foo: {
fred: {}, // <- I want to remove empty keys like this
barney: { bar: 1 } // <- But keep these keys
}
}
Run Code Online (Sandbox Code Playgroud)
预期
{
_id: 1,
foo: {
barney: { bar: 1 }
}
}
Run Code Online (Sandbox Code Playgroud)
我知道如何在多个请求中执行此操作,但我正在尝试更好地理解MongoDB.
注意. fred在更新命令中变为空,例如{ $unset: { "fred.baz": 1 } }何时baz是最后一个键fred.
也许可以用它的内容删除它?但命令发送者不知道,除了baz此刻,还有其他任何密钥.
Ste*_*nie 13
你可以搜索空的嵌入式文档({ })和$unset它们..这是JS shell中的一个例子:
db.mycoll.update(
{'foo.fred':{ }},
{ $unset: {'foo.fred':1} },
false, // upsert: no
true // multi: find all matches
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6728 次 |
| 最近记录: |