我正在尝试将工作中的 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声明?
3 回答
LEATH
TA贡献1936条经验 获得超6个赞
在您的情况下,它将是:
bson.M{"$or": []bson.M{
{"dependencies.provider_id": "abc"},
{"actions.provider_id": "abc"},
}}
森林海
TA贡献2011条经验 获得超2个赞
为了完整起见,这里是我在上述评论中最后一个问题的完整示例。更大的目标是在 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"})
- 3 回答
- 0 关注
- 459 浏览
添加回答
举报
0/150
提交
取消