Допустим, у меня есть следующий документ, хранящийся в коллекции mongoDB 'people':
{
_id: 489324,
name: "Ryan Jones"
skills: [ "fishing", "programming" ]
}
Я пытаюсь получить первый навык Райана Джонса в массиве (навыки [0]).
Это похоже на простую операцию, но я не могу сделать это, используя драйвер Node JS. Я могу легко получить только массив умений:
db.collection('people').findOne({ name:"Ryan Jones"},{ projection: { skills:1 }})
... но я не хочу передавать весь массив по проводам. Я просто хочу получить "рыбалку".
Я пробовал использовать slice и arrayElemAt в проекции, но я получаю MongoError. Как я могу добиться этого с помощью драйвера NodeJS? Требуется ли более сложная операция агрегации вместо findOne?