У меня этот запрос:MongoDB другой результат агрегации
db.collection.aggregate([
{
$group: {
_id: "$PATIENT_ID",
MASS: { $max: "$max_field" }
}
}
]);
В результате этого запроса:
{ "_id" : "TCGA-A2-A0YD", "mass" : 0.994683301742671 }
{ "_id" : "TCGA-A2-A3XX", "mass" : 0.993455527786917 }
У меня есть этот второй запрос:
db.collection.aggregate([
{
$group: {
_id: "TCGA-A2-A3XX",
MASS: { $max: "$max_field" }
}
}
]);
Результат этот второй запрос:
{ "_id" : "TCGA-A2-A3XX", "mass" : 0.994683301742671 }
Почему? Я ожидал, что другое значение для этого идентификатора TCGA-A2-A3XX
Спасибо за ответ. Я не знаю, почему в первом случае я получаю: TCGA-A2-A3XX, 0.993455527786917, а во втором случае я получаю TCGA-A2-A3XX 0.994683301742671 – mydb
Потому что в первом случае вы используете «$ PATIENT_ID», который ссылается на документы 'field "PATIENT_ID", и поэтому вы группируете значения этого поля. В другом случае вы группируете константу, которая всегда будет приводить к одной группе. – DAXaholic
Хорошо, но TCGA-A2-A3XX является одним из значений поля PATIENT_ID – mydb