asp.net对SQL server中某表某列的数值求和,并且赋值给float T

我会写对某列数值求和的sql语句,sqltest=“select sum(列名) from 表名”,但我不知道该用什么语句(如像cmd.ExcuteScalar();的语句返回第一行第一列的值)但是我要返回的是该列的数据之和,不是返回受影响的行数;
我得到了数据库中的项目矩阵,数据库的表就是这样的:
user item1 item2 item3 rank
user1 5 6 8
user2 3 4 9
user3 7 2
然后我要对这张表进行计算:f1=5*8+3*9,f2=6*8+7*2,f3=4*9怎么SQL语句。
这是两个问题,上面一个,矩阵的是另一个问题。谢谢大家了!

1、select sum(列名) from 表名

用cmd.ExecuteScalar()方法查出来,返回的就是第一行第一列的数据。

而不是返回受影响的行数。

 

cmd.ExecuteNonQuery()方法才是返回受影响的行数。

 

2、用sum聚合函数就可以计算出来,如下:

select 
SUM(item1*[rank]) as 'f1',
SUM(item2*[rank]) as 'f2',
SUM(item3*[rank]) as 'f3'
from Table1

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-03
第一个问题:
用cmd.ExcuteScalar()运行select sum(列名) from 表名” 返回的就是你要的结果。

第二个问题:
SELECT SUM( ISNULL(item1,0)*ISNULL(rank, 0) ) as f1,
SUM( ISNULL(item2,0)*ISNULL(rank, 0) ) as f2,
SUM( ISNULL(item3,0)*ISNULL(rank, 0) ) as f3
FROM 表名
相似回答