我有一个名为费用的sql表,其中包含一个名为cost的int列。在我的应用程序中,这个数据显示在一个网格上,每当我用linq2sql插入插入一个新行时,网格就会刷新。我想要做的是在我的应用程序中有一个整数变量,它是每次插入行时成本列中所有字段的总和。计算sql数据库中同一列中的所有行的总数
有没有一种简单的方法来总结这些领域与linq2sql每次我插入。请尽量避免使用lambda,因为我还没有学习过。
谢谢!
我有一个名为费用的sql表,其中包含一个名为cost的int列。在我的应用程序中,这个数据显示在一个网格上,每当我用linq2sql插入插入一个新行时,网格就会刷新。我想要做的是在我的应用程序中有一个整数变量,它是每次插入行时成本列中所有字段的总和。计算sql数据库中同一列中的所有行的总数
有没有一种简单的方法来总结这些领域与linq2sql每次我插入。请尽量避免使用lambda,因为我还没有学习过。
谢谢!
假设你使用的查询语法而不是lambda表达式,你在这儿:
var totalCost = (from expensesRow in dataContext.Expenses
select expensesRow.cost)
.Sum();
这其实是一样的:
var totalCost = dataContext.Expenses
.Sum(x => x.cost);
这里dataContext
是您的LINQ2SQL DataContext
类的一个实例。
说我有一个表叫用户提供如下结构:
[Table users] - id | username | points_awarded
然后,我可以找点总数我通过运行查询授予每个用户:
SELECT SUM(points_awarded) as total_points FROM users
你也可以统计有多少用户的点数大于我们等于N.例如,表示N = 500,那么我可以运行:
SELECT COUNT(id) as num_users_with_points FROM users WHERE points_award >= 500
退房:
http://dev.mysql.com/doc/refman/5.1/en/counting-rows.html
http://dev.mysql.com/doc/refman/5.0/en/func-op-summary-ref.html
欲了解更多信息。
是不是一个直的SQL查询?我正在使用linq2sql – 2012-04-18 00:26:06
哦,对此很抱歉。我没有清楚地阅读你的问题。 – 2012-04-18 00:28:25
今天你要学习lambda。 http://www.theabsentmindedcoder.com/2010/06/linq-sum.html有正好你想要什么,并使用一个非常简单的lambda来到那里。你可以通过让你的选择只收集你想要求和的一列整数来避开lambda,但为什么还要做额外的工作来不学习东西?
完美!!!!谢谢sooooooo多!!!!!! – 2012-04-25 21:22:00
@ adam355你很好。但是,请考虑学习lambda。 :) – 2012-04-26 03:25:25