выделите несколько столбцов с помощью linq и суммируйте их - PullRequest
0 голосов
/ 21 мая 2010

Как выбрать несколько столбцов и рассчитать общую сумму.

Например, в моей базе данных есть несколько полей с именами:

5hunderedBills, 2hunderedBills, 1hunderedBills, и т.д.

И значение этих полей, например:

5, 2, 3

И сумма будет:

5hunderedBills * 5 + 2hunderedBills * 2 + 1hunderedBills * 3

Как я могу сделать это с LINQ в одном операторе select?

Ответы [ 2 ]

1 голос
/ 21 мая 2010

Следующий код суммирует все три столбца с весами и возвращает общую сумму для всех строк.

YourDatabaseContext.Where( item => item.Date == someCriteria).Sum( item => item.FiveHundredBills * 5 + item.TwoHundredBills * 2 + item.OneHundredBills );

Если вам нужен список суммы для каждой строки, поменяйте местами методы Sum() и Select():

YourDatabaseContext.Where( item => item.Date == someCriteria).Select( item => item.FiveHundredBills * 5 + item.TwoHundredBills * 2 + item.OneHundredBills );
0 голосов
/ 21 мая 2010
var sum = from b in db.bills
select b.5hunderedBills + b.2hunderedBills + b.1hunderedBills ;

db - это имя вашего LINQ DataContext, а bills - это имя рассматриваемой таблицы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...