示例文档
{"id": 1, "alive":true},
{"id": 2, "alive":true},
{"id": 3, "alive":true},
{"id": 4, "alive":true}
问题
如果有像.想要将多个文档的活动值更新为 false。目前使用这种方式。var targetIds []int{1, 3, 4}
var targetIds []int{1, 3, 4}
collection := MongoClient.Database("my_database").Collection("my_collection")
updateDoc := bson.M {
"$set": bson.M {
"alive": false,
}
}
for _, targetId := range targetIds{
filter := bson.M{
"id": targetId,
}
_, err := collection.UpdateOne(context.Background(), filter, updateDoc)
if err != nil {
panic(err)
}
}
例如,在postgresql中可以使用这种方式
UPDATE [my_table] SET alive = false WHERE id IN [targetIds];
不使用 for 循环。一个查询,就像示例 postgresql 查询中的方式
在Go mongodb驱动程序中是否有类似的方法?
慕哥9229398
相关分类