MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

Como escrever a forma bson da consulta mongo em golang?


O problema com seu código golang é que você não agrupou.

Você pode usar o Pipe que prepara um pipeline para agregar:
pipe := db.C(COLLECTION).Pipe([]bson.M{
    {"$match":  bson.M{"nfType": "AMF"}},
    {"$unwind": "$ipv4Addresses"},
    {"$group":  bson.M{
                       "_id": "$distance",
                       "ipv4Addresses": bson.M{"$addToSet": "$ipv4Addresses"},
                      }},
    {"$sort": bson.M{"_id": 1}},
    {"$limit": 1},

})

err := pipe.All(&ip)