取出来,这样, original api: int result=(int)sc.ExecuteScalar();linq:
var v=from row in this.dc.yourTable select row.主机数理; int result=0; foreach(var item in v){ result+=item; }
我回来啦,这么简单个问题还没闹出个结果啊。。看我代码! SqlConnection con = new SqlConnection(你的连接字符串); con.Open(); SqlCommand comm = new SqlCommand(" select SUM(主机数量) from view_Modify where (有查询条件,这里就不写了) GROUP BY 主机数量 ", con);---这里记得要有group by 否则sql文是不正确的 int result=Convert.ToInt32(comm.ExecuteScalar());
这样能求出总和,但是下面的我怎样才能把这个数取出来用?
{
YSZC.DAL data = new YSZC.DAL();
SqlConnection con;
con = data.DBConnection;
string sqlstr;
sqlstr = "select sum(主机数量) from view_Modify where (查询条件)
con.Open();
Int32 amount;
SqlCommand cmd1 = new SqlCommand(sqlstr, con);
amount = cmd1.ExecuteNonQuery();
return Convert.ToString(s).Trim();
}
最后求的数要在这个return中,大家看看我这样做错在了什么地方,或者有更好的办法也行
{
YSZC.DAL data = new YSZC.DAL();
SqlConnection con;
con = data.DBConnection;
string sqlstr;
sqlstr = "select sum(主机数量) from view_Modify where (查询条件)
con.Open();
Int32 amount;
SqlCommand cmd1 = new SqlCommand(sqlstr, con);
amount = cmd1.ExecuteNonQuery();
return Convert.ToString(amount).Trim();
}
最后求的数要在这个return中,大家看看我这样做错在了什么地方,或者有更好的办法也行
---返回值是影响行数,不是你的查询值!!!!楼主你会不会用msdn?
请看看
original api: int result=(int)sc.ExecuteScalar();linq:
var v=from row in this.dc.yourTable
select row.主机数理;
int result=0;
foreach(var item in v){
result+=item;
}
SqlConnection con = new SqlConnection(你的连接字符串);
con.Open();
SqlCommand comm = new SqlCommand(" select SUM(主机数量) from view_Modify where (有查询条件,这里就不写了) GROUP BY 主机数量
", con);---这里记得要有group by 否则sql文是不正确的
int result=Convert.ToInt32(comm.ExecuteScalar());