Здесь вам действительно не нужно distinct
, вы можете использовать find()
на Friends.id
и фильтровать первый поддокумент, который соответствует Friends.id
, с позиционным параметром $
:
db.user.find(
{ 'id': 'id1', 'Friends.id': 'id2'},
{ 'Friends.$': 1 }
)
В мангусте:
User.find({ 'id': req.body.myId, 'Friends.id': req.body.id }, { 'Friends.$': 1 }).then(function(myDoc) {
console.log("_id :" + myDoc[0].Friends[0].id);
console.log("gender:" + myDoc[0].Friends[0].gender);
})