Code: Select all
return await query.GroupBy(x => new
{
Id = x.xId,
Date = x.Date
})
.Select(x => new OutputClass(x.Key.Id,
x.Key.Date,
x.Sum(g => g.Tot.Value),
x.Sum(g => g.Table1.Table2.Ind ? g.Tot.Value : 0),
x.Sum(g => g.Table1.Table2.War ? g.Tot.Value : 0),
x.Sum(g => g.Table1.Table2.Non ? g.Tot.Value : 0)
)
)
.ToListAsync();
Code: Select all
SELECT
SUM(...),
SUM(CASE WHEN ...),
SUM(CASE WHEN ...),
SUM(CASE WHEN ...)
FROM
Natürlich ist die Leistung eine Katastrophe. Ich habe versucht, ein Select vor GroupBy einzufügen, aber es hat nicht funktioniert.
Irgendwelche Ideen, um alles in der Datenbank (nicht im Speicher) auszuführen, kein reines SQL zu verwenden und das Erstellen einer Ansicht zu vermeiden?
Mobile version