php mysql sum用法_Mysql中的count()与sum()区别

本文通过实例介绍了MySQL中COUNT()和SUM()函数的区别,以及在统计行数和求和中的不同应用。COUNT()函数计算的是指定列有值的行数,而SUM()函数则是对列值进行求和。在查询2门及以上不及格者平均成绩的问题中,正确的方法是使用COUNT()来统计不及格科目数量。注意,即使列值为NULL,COUNT()也会计入计数。在实际编程中,COUNT(*)常用于统计总行数。
摘要由CSDN通过智能技术生成

Mysql中的count()与sum()区别

首先创建个表说明问题

CREATE TABLE `result` (

`name` varchar(20) default NULL,

`subject` varchar(20) default NULL,

`score` tinyint(4) default NULL

) ENGINE=MyISAM DEFAULT CHARSET=utf8

www.2cto.com

插入一些数据,

insert into result values

('张三','数学',90),

('张三','语文',50),

('张三','地理',40),

('李四','语文',55),

('李四','政治',45),

('王五','政治',30),

('赵六','语文',100),

('赵六','数学',99),

('赵六','品德',98);

要求:查询出2门及2门以上不及格者的平均成绩。

经常会用两种查询语句有两种:

1. select name,sum(score < 60) ,avg(score)  from result  group by name having sum(score<60) >=2;

2.select name ,count((score<60)!=0) as a,avg(score) from result group by name having a >=2;

www.2cto.com

两种查询的结果肯定是不一样的,肯定是第一种正确的,原因是为什么,这时你就要想了,count()函数的意义和sum函数的意义

count()函数里面的参数是列名的的时候,那么会计算有值项的次数。

Sum()函数里面的参数是列名的时候,是计算列名的值的相加,而不是有值项的总数。

对count()行数还要注意:它会计算总行数。不管你是否有值都会列入计算范围。另外一点:mysqlisam引擎很容易获得总行数的统计。查询速度变得更快

归纳:实际编程中统计总行数是经常用到的。此时使用count(*)多处可见。我很少看到有人使用列名作为参数:count(a)的情况。即使是这样使用,可能其初衷也是想统计行数。只是不知道!这样所造成的细微差异而错误使用了"列名"的形式。

### 回答1: 在MySQLCOUNTSUM是聚合函数,可以用于统计某个字段的值的数量和总和。比如,可以使用以下语句统计一个表某个字段的值数量: SELECT COUNT(column_name) FROM table_name; 也可以使用以下语句统计某个字段的总和: SELECT SUM(column_name) FROM table_name; 使用COUNTSUM函数可以方便地进行数据统计。 ### 回答2: MySQLCOUNTSUM函数都用于对查询结果进行简单的数学运算。COUNT函数使用时需要指定要计算的列名,它返回查询结果行数或指定列非NULL值的数量。SUM函数则用于计算指定列所有非NULL值的总和。 当需要同时统计某一列的行数和总和时,可以将COUNTSUM组合使用。例如: SELECT COUNT(col1), SUM(col2) FROM table; 上面的查询语句将会统计表tablecol1列的行数和col2列的总和。如果要同时统计多个列的行数和总和,可以使用多个COUNTSUM函数,例如: SELECT COUNT(col1), COUNT(col2), SUM(col3), SUM(col4) FROM table; 上面的查询语句将会统计表tablecol1和col2列的行数和col3和col4列的总和。 需要注意的是,在使用COUNTSUM函数时需要确保列名写正确,并且不能统计NULL或空值。如果需要统计NULL值,可以使用COUNT(*)代替COUNT(column)。如果需要统计空值,可以使用COUNT(column) + COUNT(*)代替COUNT(column)。 总的来说,MySQLCOUNTSUM函数非常灵活,可以在查询方便地进行统计和计算,能够帮助用户更快速地获取所需要的数据。 ### 回答3: MySQL是一个非常流行的开源关系型数据库管理系统,提供了许多强大的查询功能。当我们需要统计一些数据时,可以使用MySQLcountsum函数。count函数返回指定列的行数,而sum函数返回指定列所有值的总和。这两个函数的结合可以使用以下SQL语句实现: SELECT COUNT(column1), SUM(column2) FROM table_name; 其,column1和column2分别表示需要统计行数和求和的列名,table_name表示需要统计的表名。这个查询将返回结果集,包含两列:第一列返回指定列的行数,第二列返回指定列所有值的总和。 使用countsum函数可以方便地对表的数据进行分析和总结。例如,我们可以使用这两个函数统计某个城市的人口数量和总收入,或者统计某个商品的销售量和总收入等等。此外,使用这两个函数还可以帮助我们发现数据的异常值和错误,进一步提高数据分析的准确性和可信度。 总之,MySQLcountsum函数是非常实用的查询功能,可以帮助我们快速统计和分析数据。对于需要进行数据分析和处理的人员来说,掌握这些函数的使用方法是非常重要的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值