我有一个mongoDB(流星)集合,该集合使用fetch方法返回对象的集合。数组中的每个返回对象都是这种形式
{quiz : {_id : 1,
title : 'The days of our lives'}
user : {name : 'Jamie'}
score : 34}
我想过滤查询结果并按测验标题分组,以便我可以根据测验标题对所有分数进行分组。任何帮助表示赞赏
最佳答案
可能最好的方法是利用测验_id
。您可能会遇到两个标题相似但测验却不同的情况。然后,您的团队会变得混乱。因此,只需使用点符号并找到适用于该测验的所有答案,如下所示:
var answersByQuiz1 = Answers.find({
'quiz._id': 1
}).fetch();
如果您需要几组答案,则可以执行以下操作:
var answers = Answers.find({
'quiz._id': {
$in: [1,2,3,4,5,6,7] // ids of concern
}
}).fetch();
并使用例如
underscorejs
将它们分组在客户端上:_.groupBy(answers, function(answer){ return answer.quiz._id; });
关于javascript - 筛选 meteor 集合,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37053790/