0
我想要得到一个超出我的深度的Mongo 3.0查询。希望得到一点帮助。基本上,我的数据库有转录记录,其中有一个给定的用户名,项目ID,科考队ID和finished_date。那些是我感兴趣的领域。一个项目将有多个探险队,每个探险队都有多个转录队。MongoDB聚合多个计数和最新日期
我想在给定项目的统计页面中显示给定用户的信息。显示内容包括用户提交的整个项目的用户名,项目总转录数,总参加人数,用户在整个项目中参与的次数,以及用户实际执行转录的最后日期。
到目前为止,这是很容易使用的USER_NAME计数和匹配的PROJECT_ID
db.transcriptions.aggregate([
{ "$match" : {"projectId" => 13}},
{ "$group": {
"_id": "$user_name",
"transcriptionCount" : {"$sum" : 1 }
}
}
])
每个转录文档有一个expeditionId场拿到项目总抄录(4,7,9,10,等等)和finished_date。因此,如果用户执行了100次转录,只参加了考察7和10,则总参加探险次数= 2 最后finished_date是显示用户上次执行转录的日期。返回记录示例:
user_name: john smith
transcriptionCount: 100
expeditionCount: 2
last_date: 2017-08-15
希望我解释得不错。将不胜感激任何帮助。