Dies ist die aktualisierte Version von $max
. Ich habe diesen Code von dir ausprobiert.
db.contact.aggregate([
{$sort: {machine_Id: 1, date:1}},
{$group:{
_id: '$machine_Id',
max_air_Temp: {$max:"$air_Temp"}
}
}
], function(err, meibanlist) {
if (err || !meibanlist) console.log("Record not found");
else meibanlist.forEach (function(machine_Id){
console.log(machine_Id);
})
});
, aber wenn ich das in mongodb lief, gab es mir:
{ _id: 5, max_air_Temp: 819 }
{ _id: 857, max_air_Temp: 121 }
{ _id: 52, max_air_Temp: 146 }
{ _id: 67, max_air_Temp: 300 }
{ _id: 655, max_air_Temp: 84 }
{ _id: 15, max_air_Temp: 844 }
{ _id: 363, max_air_Temp: 861 }
{ _id: 717, max_air_Temp: 623 }
{ _id: 189, max_air_Temp: 639 }
{ _id: 346, max_air_Temp: 563 }
{ _id: 470, max_air_Temp: 804 }
{ _id: 917, max_air_Temp: 697 }
{ _id: 167, max_air_Temp: 438 }
{ _id: 4, max_air_Temp: 467 }
Aber wenn ich diesen Code versucht:
db.contact.aggregate([{$group: {_id: "machine_Id", max: {$max: "$air_Temp"}}}],
function(err, meibanlist) {
if (err || !meibanlist) console.log("Record not found");
else meibanlist.forEach (function(machine_Id){
console.log(machine_Id);
})
});
es zeigte mir diese Ausgabe: Dieser Ausgang ist mehr ähnlich zu dem, was ich will, weil es mir nur einen Ausgang zeigt, aber ich würde wollen, dass die 'machine_id'
die genaue ID anstelle des Wortes machine_id
zeigt. Weißt du, wie man dieses Set bearbeitet?
Ausgang:
{ _id: 'machine_Id', max: 997 }
Wenn ich Ihren Code lief, gab es mir die Antwort (siehe oben). Was ich suchte, ist nur 1 Ausgabe anstelle von allen Aufzeichnungen, die ich habe. – Noobstudent
überprüfen update Antwort @Noobstudent –
immer noch die gleiche Ausgabe obwohl – Noobstudent