2013-08-01 55 views
4

我想解释一个mongoDB更新;但没有发生? Mongo不支持这个吗?为什么我无法在MongoDB更新上运行解释?

> db.movies.update({"actors.name": "Christian Bale"}, {$set: {"actors.$.name": "Christina Bale"}}, {$explain: 1}); 
> 

我使用.explain()._addSpecial("$explain", 1")尝试过其他的变化。这两个都会产生以下错误:

Thu Aug 1 11:26:46.368 JavaScript execution failed: TypeError: Cannot call method 'explain' of undefined

+0

你有没有幸运的获得更新的性能信息? –

回答

0

为什么要调用更新说明?据我所知,解释将显示您的查询将如何获取行,所以你可以简单地做:

db.movies.find(
    {$query: {"actors.name": "Christian Bale"}}, 
    {$explain: 1} 
); 
+0

这也会产生一个错误:'> db.movi​​es.update({$ query:{{“actors.name”:“Christian Bale”},{$ set:{“actors。$。name”:“Christina Bale “}}}},{$ explain:1}); Thu Aug 1 11:31:41.958 JavaScript执行失败:SyntaxError:意外的令牌{ > –

+0

更改了答案 –

+4

我有兴趣更新一组行以及其他信息所需的时间 –

6

我相信以下将允许您拨打您的查询解释。

db.movies.explain().update({your_query}) 

希望这可以帮助,如果你需要更多的信息让我知道。

+1

这适用于版本3.4;应该可能会被接受的答案。 – Zugwalt

相关问题