Golang BSON 转换

我正在尝试将工作中的 mongo 查询转换为 golang 中的 bson。我已经完成了基本的工作,但正在努力弄清楚如何将更高级的or查询集成到组合中。


有人能帮我转换以下查询吗?它应该有希望给我我需要的方向......不幸的是,除了评估和查询之外,我还没有找到很多例子。


这适用于 mongo:


db.my_collection.find({"$or": [

      {"dependencies.provider_id": "abc"}, 

      {"actions.provider_id": "abc"}]})

这适用于 golang/bson:


bson.M{"dependencies.provider_id": "abc"}

我该如何正确地介绍该or声明?


梦里花落0921
浏览 460回答 3
3回答

LEATH

在您的情况下,它将是:bson.M{"$or": []bson.M{    {"dependencies.provider_id": "abc"},    {"actions.provider_id": "abc"},}}

森林海

为了完整起见,这里是我在上述评论中最后一个问题的完整示例。更大的目标是在 go 中动态构建 bson 查询。非常感谢ANisus:query := bson.M{}query["origin"] = "test"query["$or"] = []bson.M{}query["$or"] = append(query["$or"].([]bson.M), bson.M{"abc": "1"})query["$or"] = append(query["$or"].([]bson.M), bson.M{"def": "2"})
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go