【发布时间】:2014-08-12 02:55:04
【问题描述】:
我有一个包含如下文档的集合:
{
"user": "foo",
"topics": {
"Topic AB": {
"score": 20,
"frequency": 3,
"last_seen": 40
},
"Topic BD": {
"score": 10,
"frequency": 2,
"last_seen": 38
},
"Topic TF": {
"score": 19,
"frequency": 6,
"last_seen": 20
}
}
}
我想删除 last_seen 值小于 30 的子文档。
我不想在这里使用数组,因为我使用$inc 和upsert 一起更新子文档(不支持$ 表示法)。
这里真正的问题是如何根据键的值删除键。使用$unset 只需删除一个子文档,无论它包含什么。
【问题讨论】:
-
topics是一个数组吗? -
ma08 - 不,它是一个子文档,动态创建的键在此集合中的文档之间有所不同。
标签: mongodb