MongoDB中的$ pull操作对我不起作用

时间:2012-11-14 17:56:25

标签: mongodb

我有一个包含以下密钥数组对的文档:

"home" : [
        "Kevin Garnett",
        "Paul Pierce",
        "Rajon Rondo",
        "Brandon Bass",
        " 5 sec inbound",
        "Kevin Seraphin"
    ]

我想从数组中删除元素" 5 sec inbound"并使用以下命令(在MongoDB shell中):

>coll.update({},{"$pull":{"home":" 5 sec inbound"}})

这不符合查询验证:

>coll.findOne({"home":/5 sec inbound/})
"home" : [
        "Kevin Garnett",
        "Paul Pierce",
        "Rajon Rondo",
        "Brandon Bass",
        " 5 sec inbound",
        "Kevin Seraphin"
    ]

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:1)

同样的陈述对我有用:

> db.test.insert({"home" : [
...         "Kevin Garnett",
...         "Paul Pierce",
...         "Rajon Rondo",
...         "Brandon Bass",
...         " 5 sec inbound",
...         "Kevin Seraphin"
...     ]})
> db.test.find({"home":/5 sec inbound/}).count()
1
> db.test.update({},{"$pull":{"home":" 5 sec inbound"}})
> db.test.find({"home":/5 sec inbound/}).count()
0