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

查询有关 Go 项目中对象数组的 MongoDb 集合

查询有关 Go 项目中对象数组的 MongoDb 集合

Go
元芳怎么了 2023-02-14 16:39:27
在一个Go项目中,我将一些这样的数据存储在一个MongoDb集合中:{    _id:ObjectId("631f0752da589137a71687f6"),    target: { roomId: '11' }}{    _id:ObjectId("43150752da589137a71687f6"),    target: { roomId: '12' }}...我有一个目标对象数组,我想检查数据库,看看roomId数据库中的一个是否等于我的对象数组值之一。我的目标对象数组: userRooms:[{"roomId":"12"}, {"roomId":"13"}, {"roomId":"14"}] 我创建了一个仅包含房间 ID 的新数组,如下所示:var roomIds []stringfor _, v := range RESPONSE.USERROOMS {    roomIds = append(roomIds, v.ROOMID)}我这样做:bson.M{ "target": bson.M{"roomId":bson.M{"$in": roomIds }}}}}})它不起作用。它返回零结果。
查看完整描述

1 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

要为嵌套字段构造过滤器,请使用点.指定具有完整“路径”的字段:

bson.M{"target.roomId": bson.M{"$in": roomIds}}

roomIdsID 的切片应该在哪里,例如类型[]stringor []any,但它应该包含房间 ID 作为strings。


查看完整回答
反对 回复 2023-02-14
  • 1 回答
  • 0 关注
  • 136 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号