SQL怎么对某一列进行求和 并计数?一句sql语句可以写么

如题所述

select sum(id4),count(*) from a_temp ;

可以一句SQL就直接查询得到列的和以及记录数。

该SQL中sum(id4)是列id4的总和,

count(*)是得到的数据总行数。


温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-29

Student表:

学号    姓名    成绩

-------------------------------

001    小明    98

002     小白    67

003    小红    88

 

对该表的成绩列求和并记数:

select sum(成绩) as 总分,count(*) from Student

追问

忘了加上,count计数的时候,那一列如果为0,就不算到计数里面,比如你的三列,对每列进行计数,只要包含0的,就不算
学号 姓名 成绩
-------------------------------
001 小明 98
002 0 67
003 小红 0
这样计数 姓名一列计数为2,成绩一列也为2

追答

后面再加条件判断就好了:

select sum(成绩) as 总分,count(*) from Student where 姓名<>'0'

如果0为数值的话,没有单引号,就是:

where 字段名<>0

追问

完全没明白我的意思。。。。
学号 姓名 成绩
-------------------------------
001 小明 98
002 0 67
003 0 0
比如这样的数据,计数的时候count(姓名)为1,count(成绩)为2,两个计数,用一条语句查询

追答

要分组计算是吧,用gruop by
对于你给的数据,如果显示某同学的姓名,科目数,总成绩:
select 姓名,count(姓名) as 科目数,sum(成绩) from Student group by 姓名

本回答被提问者和网友采纳
第2个回答  2015-09-25

    可以的;

    select sum(列名), Count(列名) From 表

    你可以把问题描述的更加清楚点,才能更加有针对性的回答。

第3个回答  2015-10-07
 

 SELECT SUM(求和列名) AS 总和, COUNT(计数列名) AS 计数 FROM [表名]

相似回答