我如何计算 mongoDB 中的所有用户和帖子
how can i count all users and posts in mongoDB
我想统计网站的用户数、帖子数和评论数,并将数据发送到显示所有用户数和帖子数的仪表板。我无法解决这个问题。这是我的代码
app.get('/', async (req,res)=>{
const query = User.find()
const posts = Post.find()
const user = await query.countDocuments((err,count)=>{
if(err){
console.log(err)
}else{
return count;
}
})
const post = await posts.countDocuments((err , posts)=>{
if(err){
console.log(err)
}else{
return posts;
}
})
console.log(post)
res.render('dashboard',{userCount: user , posts:post})
})
您可以使用聚合找到文档的数量:
const postCount = await posts.aggregate([{$group: {
_id : null,
count : { $sum : 1}
}}, {$project: {
_id : 0
}}]);
您将得到如下输出:
count : 11
说明
$group
阶段将 select 不同的记录。当设置为 null 时,它 select 集合中的所有记录。
$project
阶段将 select 我们需要输出哪些字段(因为我们只需要计数我们可以消除其他字段)
我想统计网站的用户数、帖子数和评论数,并将数据发送到显示所有用户数和帖子数的仪表板。我无法解决这个问题。这是我的代码
app.get('/', async (req,res)=>{
const query = User.find()
const posts = Post.find()
const user = await query.countDocuments((err,count)=>{
if(err){
console.log(err)
}else{
return count;
}
})
const post = await posts.countDocuments((err , posts)=>{
if(err){
console.log(err)
}else{
return posts;
}
})
console.log(post)
res.render('dashboard',{userCount: user , posts:post})
})
您可以使用聚合找到文档的数量:
const postCount = await posts.aggregate([{$group: {
_id : null,
count : { $sum : 1}
}}, {$project: {
_id : 0
}}]);
您将得到如下输出:
count : 11
说明
$group
阶段将 select 不同的记录。当设置为 null 时,它 select 集合中的所有记录。
$project
阶段将 select 我们需要输出哪些字段(因为我们只需要计数我们可以消除其他字段)