繁体   English   中英

LINQ的SQL表行的总和?

[英]Sum of SQL table rows with LINQ?

SQL数据库中有一个表,如下所示:

SampleTable:

-----------------------
 id | number | price 
-----------------------
 1  |   3    | 300
 2  |   1    | 200
 3  |   5    | 100
 4  |   10   | 10
 5  |   30   | 30
 6  |   1    | 500
-----------------------

我想计算总价如下:

in each row => var SumOfEachRow = number * price;
Total Price = sum of SumOfEachRow;

因此Total Price将是3100。

现在,我想用LINQ计算它。 例如:

int TotalPrice = from q in SampleTable
                 select new
                 {
                    TotalPrice = q.number * q.price 
                 }.Sum();

上行代码返回错误的结果! 你能指导我吗? 谢谢。

尝试:

decimal TotalPrice = SampleTable.Sum(q => q.number * q.price);

试试这个

  var TotalPrice = from q in SampleTable.AsEnumerable()
                         let y = Convert.ToInt32(q["number"]) * Convert.ToInt32(q["price"])
                         select y;

      int totalPrice =  TotalPrice.Sum();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM