c# - Sum and grouping multiple columns into one value in linq -


i have table fields:

id,sales1, sales2, sales3 1   25      15       15 1   10      7        3 2   8       11       9 3   10      5        7 3   22      9        4 

i need filter table id , return sum of sales1 + sales2 + sales3. in mysql done

select (sum(sales1) + sum(sales2) + sum(sales3)) total id = 1 group id 

but can't work in linq. can me this?

scratched in linqpad:

void main() {     //since don't have suitable database @ hand     //i'm emulating list     var sales = new list<sale>()     {         new sale() {id = 1, sales1 = 25, sales2= 15, sales3= 15},         new sale() {id = 1, sales1 = 10, sales2= 7, sales3= 3},         new sale() {id = 2, sales1 = 8, sales2= 11, sales3= 9},         new sale() {id = 3, sales1 = 10, sales2= 5, sales3= 7},         new sale() {id = 3, sales1 = 22, sales2= 9, sales3= 4},     };      var filteredsales = sales.groupby (s => s.id)//need group able use .sum()                               //.where (s => s.key == 1)                              .select (s => new                               {                                id = s.key,                                sum = s.sum (x => x.sales1 + x.sales2 + x.sales3)                                }).dump(); //ignore dump. available in linqpad }  class sale {     public int id { get; set; }     public int sales1 { get; set; }     public int sales2 { get; set; }     public int sales3 { get; set; } } 

result:

id | sum 1    75 2    28 3    57 

uncomment clause filter id. kind regards


Comments

Popular posts from this blog

java - WrongTypeOfReturnValue exception thrown when unit testing using mockito -

php - Magento - Deleted Base url key -

android - How to disable Button if EditText is empty ? -