t = db.index_check5 t.drop(); t.save( { "name" : "Player1" , "scores" : [{"level" : 1 , "score" : 100}, {"level" : 2 , "score" : 50}], "total" : 150 } ); t.save( { "name" : "Player2" , "total" : 90 , "scores" : [ {"level" : 1 , "score" : 90}, {"level" : 2 , "score" : 0} ] } ); assert.eq( 2 , t.find( { "scores.level": 2, "scores.score": {$gt:30} } ).itcount() , "A" ); t.ensureIndex( { "scores.level" : 1 , "scores.score" : 1 } ); assert.eq( 1 , t.find( { "scores.level": 2, "scores.score": {$gt:30} } ).itcount() , "B" );