PyMongo 的奇技淫巧
1 如何更新单个子元素
假如我们想更新下面这条记录中的密码,由112233
改为v2aicn
,你该怎么办?
1 | { |
很简单是不是,上手就可以写:
1 | db.testCol.update_one({"id": "123456"}, {"$set": {"user": {"password": "v2aicn"}}}) |
改完一查发现不对,记录被改成了下面这样。
1 | { |
咦~~~我的name
呢?
如果只修改其中一个字段要下面这样写:
1 | db.testCol.update_one({"id": "123456"}, {"$set": {"user.password": "v2aicn"}}) |
现在看看就正常了:
1 | { |
2 如何更新数组中的元素
假如我们想更新下面这条记录中的 xiaoli 的密码,由112233
改为v2aicn
,你该怎么办?
1 | { |
这里需要一些技巧,代码如下:
1 | db.testCol.update({"id": "123456", "user.name": "xiaoli"}, {"$set": {"user.$.password": "v2aicn"}}) |