0

我有一个猫鼬模式。我想计算与架构相对应的集合中的记录。我不想计算所有记录,而是满足某些条件的记录。如何同步执行这个计数?

在 mongodb 控制台中,我可以执行“db.mycollections.find(criteria).count()”。如何从 mongoose 代码执行此查询?

4

1 回答 1

1

Mongoose 与大多数 nodejs 模块一样,并非旨在用于同步代码执行。这将导致所有应用程序的执行在数据库执行查询时停止,这可能会很长时间。

您可以在模型上调用一个异步计数函数。

假设您从您的模式中制作了一个模型,如下所示:

var MyModel = mongoose.model('mySchemaCollection', mySchema);

你可以像这样得到计数:

MyModel.count(criteria, function (err, count) { 
    /* handle count */ 
});

您可以从Mongoose 文档中阅读有关计数以及其他类型查询的更多信息。

于 2013-10-25T17:50:07.273 回答