Ajouter un nouvel ensemble de données pour DeviceEventObject
Ajoutez la fonction d'agrégation suivante dans le générateur d'expression de commande.
La fonction ci-dessous $lookup
les données du niveau de priorité du code d'erreur d'état basé sur terminalId suivi de $unwind
pour aplatir les données.
$group
les données aplaties sur terminalId pour accumuler les niveaux de priorité distincts pour un identifiant de terminal.
$project
pour compter les niveaux de priorité distincts
[{$lookup:{
from: "devicestatuserrorcodeprioirtylevel", // name of the collection
localField: "terminal.terminalId",
foreignField: "terminal.terminalId",
as: "dsecpl"
}},
{$unwind:"$dsecpl"},
{$group:{
"_id":"$terminal.terminalId",
"prioritylevels":{"$addToSet":"$dsecpl.priorityLevel"},
"events":{"$push":"$event"}
}},
{"$project":{"prioritylevelcount":{"$size":"$prioritylevels"}, "events": 1} }
]
Déplacez tous les champs disponibles vers la colonne des champs sélectionnés.
Aperçu des résultats.