gpt4 book ai didi

node.js - MongoDB无法调用未定义的方法 'aggregate'

转载 作者:太空宇宙 更新时间:2023-11-04 01:07:36 25 4
gpt4 key购买 nike

我正在尝试拉出数组中的最低分数。我的错误是无法调用未定义的“聚合”方法。 mongodb中定义了聚合方法,我什至找到了它,并且db.students肯定是定义的。我似乎找不到哪里出错了。

var MongoClient = require('mongodb').MongoClient // Driver for connecting to MongoDB

MongoClient.connect('mongodb://localhost:27017/school', function(err, db) {
if(err) throw err;

x = db.students.aggregate( [{ "$unwind":"$scores" },{"$match":{"scores.type":"homework"}},{ "$group":{"_id":"$_id","minscore":{"$min":"$scores.score" }}} ] )

x.result.forEach(function(doc) {
db.students.update( { "_id": doc._id },
{ "$pull": { "scores" : {
"score":doc.minscore,
"type":"homework"
} } }
);
});

});

我有一种感觉,因为盯着这个看得太久,我变得视野狭隘,谢谢你用一双新鲜的眼睛为我审视它。

最佳答案

如果您要使用 Node 驱动程序,则不能使用与 Mongo shell 中相同的语法。应该是这样的:

db.collection('students').aggregate();

Here's the reference.

关于node.js - MongoDB无法调用未定义的方法 'aggregate',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21536452/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com