问题:
我有一个DailyReports
集合,其中包含一个我要分组的字段institutionId
以及logo
和name
。我正在将报告分组到一个列表中,然后我想检查一下,看看与中午之前已提交的预期报告总数相比,已提交了多少报告。
期望的报告总数将来自我的User
集合,该集合具有字段insitutionId
。
目标
我正在尝试比较查询$match
的报告总数,并将其与我的User
集合中具有institutionId
的匹配总数进行比较。我正在尝试查看有多少用户在中午12点之前尚未填写报告。
报告查询
DailyReport.aggregate([
{
$match: {
district: district,
createdOn: {
$gte: new Date(new Date().setHours(0, 0, 0, 0)),
$lte: new Date(new Date().setHours(12, 0, 0, 0)),
},
},
},
{
$group: {
_id: "$insitutionId",
name: { $first: "$name" },
logo: { $first: "$logo" },
reports: { // <== I want to compare the length of this to the return count of User.find({insitutionId: IDHERE}).count()
$push: "$$ROOT",
},
},
},
])
用户查询
User.find({insitutionId: IDHERE}).count()