Mongoose集合Question
有一个标记为answers: []
的子字段字段。我想运行一个返回相关Question
字段和答案计数的查询。
我目前的查询是:
Question.find()
.sort({ createdAt: 'desc' })
.limit(30)
.select({
title: 1,
owner: 1,
createdAt: 1,
})
.populate('owner', 'username')
.lean()
.exec((err, questions) => { ... });
我想做这样的事情:
Question.find()
.sort({ createdAt: 'desc' })
.limit(30)
.select({
title: 1,
owner: 1,
createdAt: 1,
answerCount: answers.length, // give me number of subdocs
})
.populate('owner', 'username')
.lean()
.exec((err, questions) => { ... });
有没有办法获得子网的计数而不返回完整的子网数组(它们很大)和而不运行第二个查询?
不是this question asking how to count the number of items in an array的副本,因为我不想完全返回子文件。