douhong4452 2016-04-12 18:15
浏览 37

golang / mongodb聚合查询中的复合文字中缺少类型

I want to write mongo query in golang. my mongo query is -

aggregate([
    {$match: {$and :
        [
            {"stream" : "CS"},
            {"semester" : "sem3"},
            {"section" : "A"}
        ]

    }},
    {$unwind:  '$atndnc'},
    { $group: { _id:{rollno: "$atndnc.rollno",attend:"$atndnc.attend"},count: { $sum: 1 }}},
    {  $project:
    {  _id: '$_id.rollno',
        'attend' : '$_id.attend',
        'count' : '$count'
    }}
])

And my Go code is -

cond:=[]bson.M{
    bson.M{"$match": bson.M{"$and ":[]interface{}{
        bson.M{"stream" : srchobj.Stream},
        bson.M{"semester" : srchobj.Semester},
        bson.M{"section" : srchobj.Section},
        bson.M{"college_id":srchobj.College_id},
        bson.M{"date":bson.M{"$gt":srchobj.Startdate,"$lt":srchobj.Enddate}}}}},
    bson.M{"$unwind":  "$atndnc"},
    bson.M{"$group":bson.M{"_id":{"rollno":bson.M{"$atndnc.rollno"},"attend":bson.M{"$atndnc.attend"}},"count":bson.M{"$sum":1}}},
    bson.M{"$project":bson.M{"_id":"$_id.rollno","count":"$_id.count"}}}

but it give the error "missing type in composite literal" in

    bson.M{"$group":bson.M{"_id":{"rollno":bson.M{"$atndnc.rollno"},"attend":bson.M{"$atndnc.attend"}},"count":bson.M{"$sum":1}}},

in this line.what should i do now?

  • 写回答

2条回答 默认 最新

  • dongzhong2008 2016-04-12 20:47
    关注

    You have a missing type declaration on a set of braces in your $group query: {"rollno":bson.M{"$atndnc.rollno"},"attend":bson.M{"$atndnc.attend"}}

    I would assume should be: bson.M{"rollno":bson.M{"$atndnc.rollno"},"attend":bson.M{"$atndnc.attend":nil}}

    there are also a few other initialization things like initializations with just a string key (remember, a bson.M is just an alias for map[string]interface{}

    评论

报告相同问题?

悬赏问题

  • ¥15 基于卷积神经网络的声纹识别
  • ¥15 Python中的request,如何使用ssr节点,通过代理requests网页。本人在泰国,需要用大陆ip才能玩网页游戏,合法合规。
  • ¥100 为什么这个恒流源电路不能恒流?
  • ¥15 有偿求跨组件数据流路径图
  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 stm32开发clion时遇到的编译问题