0
假设我有下面的一组文件:MongoDB的 - 所有的数组元素的投影匹配查询
{ "_id" : 1, "semester" : 1, "grades" : [ 70, 87, 90 ] }
{ "_id" : 2, "semester" : 1, "grades" : [ 90, 88, 92 ] }
{ "_id" : 3, "semester" : 1, "grades" : [ 85, 100, 90 ] }
{ "_id" : 4, "semester" : 2, "grades" : [ 79, 85, 80 ] }
{ "_id" : 5, "semester" : 2, "grades" : [ 88, 88, 92 ] }
{ "_id" : 6, "semester" : 2, "grades" : [ 95, 90, 96 ] }
我如何可以查询到检索包含等级大于80的文件,其中包括等级阵列只在查询中匹配的项目?鉴于上面的例子,我想检索以下结果集:
{ "_id" : 1, "semester" : 1, "grades" : [ 87, 90 ] } // 70 is missing
{ "_id" : 2, "semester" : 1, "grades" : [ 90, 88, 92 ] }
{ "_id" : 3, "semester" : 1, "grades" : [ 85, 100, 90 ] }
{ "_id" : 4, "semester" : 2, "grades" : [ 85, 80 ] } // 79 is missing
{ "_id" : 5, "semester" : 2, "grades" : [ 88, 88, 92 ] }
{ "_id" : 6, "semester" : 2, "grades" : [ 95, 90, 96 ] }
如果你有一个真正的大集合,你可能要考虑先做一场比赛以减少集合的大小,但你需要做第二场比赛。 – EmptyArsenal
谢谢。如果我想将它用作map-reduce的查询,它如何完成? – user49204