#mongodb #collections
Вопрос:
У меня есть следующий документ под названием «empdept_rw», здесь я пытаюсь извлечь значения в виде списка всех доступных документов для определенного ключа. Оператор запроса :
db.empdept_rw.find({"tremployeeid" : {"$in":db.employee_rw.distinct('tremployeeid')}}, {trDepartmentID : 1, _id :0})
Выходной ток:
{ "trDepartmentID" : "1234" }
{ "trDepartmentID" : "1235" }
Ожидаемый результат:
["1234","1235"]
Ответ №1:
Вы можете использовать $group
в конвейере агрегирования:
db.empdept_rw.aggregate([
{ $match: { tremployeeid: { $in: db.employee_rw.distinct('tremployeeid') } } },
{
$group: { _id: null, trDepartmentID: { $push: "$trDepartmentID" } }
}
]).toArray().shift().trDepartmentID