sql >> Database >  >> NoSQL >> MongoDB

Dubbele rijen aan de linkerkant krijgen, doe mee aan Birt-rapporten

Voeg een nieuwe dataset toe voor DeviceEventObject

Voeg de volgende aggregatiefunctie toe in de opdrachtexpressiebuilder.

De onderstaande functie $lookup de gegevens van het prioriteitsniveau van de statusfoutcode op basis van terminalId gevolgd door $unwind om de gegevens af te vlakken.

$group de flatten data op terminalId om de verschillende prioriteitsniveaus voor een terminal-ID te verzamelen.

$project om de verschillende prioriteitsniveaus te tellen

[{$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} }
]

Verplaats alle beschikbare velden naar de geselecteerde veldenkolom.

Bekijk resultaten.




  1. Breng uw eigen Azure-accounts mee - Hosting voor MongoDB® &Redis™ bij ScaleGrid

  2. aftrekken in mongo-query werkt niet?

  3. Mongodb selecteer alle velden groeperen op één veld en sorteren op een ander veld

  4. Er is een MongoDB-waarschuwing opgetreden na het converteren van een replicaset naar een stand-alone server