【发布时间】:2014-04-24 08:54:23
【问题描述】:
如何在没有 dataGridView 的情况下将一列汇总到表中,并且我正在使用 sql 命令方法而我的数据库位于 SQL Server 2008 中。 我喜欢this script
【问题讨论】:
标签: c# sql-server winforms sqlcommand
如何在没有 dataGridView 的情况下将一列汇总到表中,并且我正在使用 sql 命令方法而我的数据库位于 SQL Server 2008 中。 我喜欢this script
【问题讨论】:
标签: c# sql-server winforms sqlcommand
using System.Data;
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter("Select Price from PriceList", connection);
sda.Fill(dt);
int sum=Convert.ToInt32(dt.Compute("sum(Price)",""));
Label1.Text=sum.ToString();
【讨论】:
您可以遍历DataTable 并对您喜欢的字段求和。
你可以试试这个,
string query = "SELECT Price FROM Bill";
OleDbDataAdapter dAdapter = new OleDbDataAdapter(query, DBconn);
DataTable dtSource = new DataTable();
dAdapter.Fill(dtSource);
int colSum =0;
foreach (DataRow dr in dtSource .Rows)
{
colSum += Convert.ToInt32(dr["Price"]);
}
TotalValueLabel.Text = colSum.ToString();
对于乘法,你可以试试这样的,
string query = "SELECT Qty,Price FROM Bill";
OleDbDataAdapter dAdapter = new OleDbDataAdapter(query, DBconn);
DataTable dtSource = new DataTable();
dAdapter.Fill(dtSource);
dtSource.Columns.Add("3rdColumn");
foreach (DataRow dr in dtSource .Rows)
{
dr["3rdColumn"]= Convert.ToInt32(dr["Qty"]) * Convert.ToInt32(dr["Price"]);
}
【讨论】:
foreach (DataRow dr in dtSource .Rows) { colSum += Convert.ToInt32(dr["colValue"]); }