gpt4 book ai didi

mongodb - 如何使用原子操作在一个文档中切换 bool 字段?

转载 作者:IT老高 更新时间:2023-10-28 13:08:30 27 4
gpt4 key购买 nike

有没有什么方法可以在 MongoDB 中通过原子操作切换 ONE 文档的 bool 字段?说,(在python中)

cl.update({"_id": ...}, {"$toggle": {"field": 1}})

最佳答案

目前,我认为不可能通过一次手术来做到这一点。位运算符 (http://www.mongodb.org/display/DOCS/Updating#Updating-%24bit) 还没有 '$xor' 虽然我有一个补丁。

现在我想到的解决方法是始终使用'$inc':

cl.update( { "_id": ...}, { '$inc' : { 'field' : 1 } } );

然后,您可以检查项目是否为“真”,而不是检查真假:

cl.find( { "_id": ..., 'field' : { '$mod' : [ 2, 1 ] } );

IE,你使用模运算符来查看它是偶数还是不均匀,甚至是“未设置”,不均匀是“设置”。如果你想有相反的行为(即找到所有没有设置标志的项目),那么使用

[ 2, 0 ];

关于mongodb - 如何使用原子操作在一个文档中切换 bool 字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9459789/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com