2

我的收藏中有几张唱片。其中一个键是“available_on”,它是一个日期时间/时间戳值。我想批量更新并为所有这些字段添加一个间隔。

所需的用法如下:

coll.update({}, {'$inc': {'available_on': 1 day}}, multi=true)

我正在使用 pymongo 1.10,据我了解,无法向updateor提供 JavaScript 代码find_and_modify。而且我只能使用更新修饰符。

4

1 回答 1

-3

我不知道 Python API,但你可以使用 $where 找到一个带有 JavaScript 的条目,例如在 JavaScript Shell 中:

db.collection.find({$where: 'this.field > 3'});

但考虑到基于 JavaScript 查找条目可能会很慢。我认为没有索引可以使用,并且您最终会进行表扫描。

您可以在官方文档中找到更多内容:http ://www.mongodb.org/display/DOCS/Server-side+Code+Execution

我认为“正常”的方式是,您找到所有要更改的条目。更改 Python 代码中的对象,并将新修改的对象保存在数据库中。

于 2011-05-31T23:21:34.740 回答