为了账号安全,请及时绑定邮箱和手机立即绑定

Golang BSON 转换

Golang BSON 转换

Go
梦里花落0921 2021-08-10 20:46:06
我正在尝试将工作中的 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"},

}}


查看完整回答
反对 回复 2021-08-10
?
森林海

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"})


查看完整回答
反对 回复 2021-08-10
  • 3 回答
  • 0 关注
  • 459 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信