Mongodb 有序排序聚合

Mongodb 有序排序聚合,mongodb,go,mgo,Mongodb,Go,Mgo,我有以下代码: competitionMatch := bson.M{ "$match": bson.M{"competition" : bson.M{"$in" : []string{"PREMIERSHIP", "CHAMPIONSHIP", "LEAGUE1", "LEAGUE2"}}}} group := bson.M{"$group" : bson.M{"_id" : "$homeTeam", "competitionOrder": bson.M{"$max": "$competit

我有以下代码:

competitionMatch := bson.M{ "$match": bson.M{"competition" : bson.M{"$in" : []string{"PREMIERSHIP", "CHAMPIONSHIP", "LEAGUE1", "LEAGUE2"}}}}

group := bson.M{"$group" : bson.M{"_id" : "$homeTeam", "competitionOrder": bson.M{"$max": "$competitionOrder"}, "competition": bson.M{"$max" : "$competition"}}}
//sort := bson.M{"$sort" : bson.M{"competitionOrder": 1,"_id": 1}}
sort := bson.M{"$sort" : bson.D{{"competitionOrder", 1}, {"_id",1}}}
project := bson.M{"$project" : bson.M{"_id":1, "competitionOrder":1, "competition": 1}}

pipe := sessionCopy.DB("footballrecord").C(season).Pipe([]bson.M{competitionMatch, group, sort, project})
我正试着做一个排序。注释的
sort
可以工作,但由于它是
bson.M
无序的,有时查询并没有返回我期望的结果

我试图使用
bson.D
(未注释行),但在运行查询时出现以下错误:
$sort key规范必须是一个对象


知道我哪里出错了吗?

我发现这是戈德普的问题。导入语句没有被重写。

那么请结束这个问题,因为它不太可能对其他人有帮助。我发现这个问题很有帮助