获取多列的总和

Jos*_*eph 6 c# entity-framework sum

我有三列,我试图得到每一列的总和.我可以为一列做到这一点:

var data = db.Test.Sum(x => x.Column1);
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚如何获得三列的总和.我尝试选择值并将它们相加,但这不起作用.

var data = db.Test.Select(x=> new { x.Column1, x.Column3, x.Column3}).Sum();
Run Code Online (Sandbox Code Playgroud)

我分别在每列的结果之后,而不是所有列的总和.

Rob*_*ein 13

var sums = db.Tests
    .GroupBy(x => true)
    .Select(x => new 
    { 
        SumColumn1 = x.Sum(y => y.Column1), 
        SumColumn2 = x.Sum(y => y.Column2), 
        SumColumn3 = x.Sum(y => y.Column3) 
    });
Run Code Online (Sandbox Code Playgroud)

GroupBy(x => true)语句将所有项目放在一个组中.该Select声明允许对每个组的操作.在这种情况下,唯一的组是一组允许我们返回Sum每列的所有项目.

  • 并添加一个 .FirstAsync() (3认同)