【发布时间】:2012-11-15 07:13:14
【问题描述】:
Mongodb 2.2.0 和mongoose 3.3.1。
我正在尝试在以下查询中运行 aggregate:
var db = mongoose.connect('localhost', 'test', '27017').connection;
var testSchema = new Schema;
var tr= db.model('tests', testSchema);
tr.aggregate({'$group':{'_id':'$test_id', 'average':{$avg:'$tes_tscore'}}})
以下错误不断弹出:
TypeError: Object function model(doc, fields, skipId) {
if (!(this instanceof model))
return new model(doc, fields, skipId);
Model.call(this, doc, fields, skipId);
} has no method 'aggregate'
mongoose 还不支持聚合还是我的代码遗漏了什么?
** tests 集合有超过 1000 个文档。运行 tr.find(... console.log(...) 返回所需的文档。
【问题讨论】:
-
您可以使用 db.runCommand("aggregate":collectionName, "pipeline":
) 在不使用聚合助手的情况下进行聚合