2013-10-25 104 views
0

我有一个猫鼬模式。我想对与模式对应的集合中的记录进行计数。我不想统计所有记录,但是满足一些标准的记录。如何同步执行此计数?在mongodb(+ mongoose)+ node.js中同步查询

MongoDB中控制台我可以做`db.mycollections.find(标准).Count之间的()”。如何从 猫鼬代码执行这个查询?

+0

您无法在node.js中执行同步查询。 – JohnnyHK

回答

1

猫鼬,像大多数模块的NodeJS,没有设计成用于同步代码执行,这会导致数据库执行查询时应用程序的所有执行都会停止,这可能需要很长时间。

有一个异步计数函数,您可以在您的模型上调用它

假设你从你的模式中创建了一个模型,如下所示:

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

你可以得到数,像这样:

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

你可以阅读更多关于数,以及其他类型的查询,从Mongoose Documentation的。