import "github.com/globalsign/mgo"job := &mgo.MapReduce{ Map: "function() { emit(this.name, 1) }", Reduce: "function(key, values) { return Array.sum(values) }", Out: "res",}_, err = c.Find(nil).MapReduce(job, nil)如何將“查詢”添加到上面的 golang mgo mapreduce ?參考:https://docs.mongodb.com/manual/core/map-reduce/ https://godoc.org/github.com/globalsign/mgo#MapReduce
2 回答

茅侃侃
TA貢獻1842條經驗 獲得超21個贊
設法通過 MongoDb 官方 godriver 完成此任務
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
par := bson.D{
{"mapreduce", "audit"},
{"map", " function() { emit( this.name , 1 ); }"},
{"reduce", "function(key, arr) { return Array.sum(arr); }"},
{"out", "mr3"},
{"query", bson.D{{"status", "SUCCESS"}}},
}
sr := db.RunCommand(nil, par)

暮色呼如
TA貢獻1853條經驗 獲得超9個贊
MapReduce
是 Find 返回的 Query 結構的函數。因此,為了將 MapReduce 應用于查詢結果,只需將查詢文檔添加到 find 函數中即可:
c.Find(query).MapReduce(job,result)
- 2 回答
- 0 關注
- 165 瀏覽
添加回答
舉報
0/150
提交
取消