MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Ottenere righe duplicate sul join sinistro nei rapporti Birt

Aggiungi un nuovo set di dati per DeviceEventObject

Aggiungi la seguente funzione di aggregazione nel generatore di espressioni di comando.

La funzione sottostante $lookup i dati dal livello di priorità del codice di errore di stato basato su terminalId seguito da $unwind per appiattire i dati.

$group i dati flatten su terminalId per accumulare i livelli di priorità distinti per un terminal id.

$project contare i distinti livelli di priorità

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

Sposta tutti i campi disponibili nella colonna dei campi selezionati.

Visualizza in anteprima i risultati.