mysql---分组函数

#分组函数

功能:统计
分类:
    sum 求和, avg平均值, max最大值, min最小值, count计算个数
特点:
    1,sum.avg一般用于处理数值型
       max.min.count可以处理任何类型
    2,分组函数都忽略null值,NULL+任何数=NULL
    3,可以和distinct搭配实现去重的运算
    4,count 函数
        一般使用count(*)用作统计行数
    5,和分组函数一同查询的字段要求是group by 后的字段
    


 


#---1.
SELECT SUM(salary) FROM employees;
SELECT AVG(salary) FROM employees;
SELECT MAX(salary) FROM employees;
SELECT MIN(salary) FROM employees;    
SELECT COUNT(salary) FROM employees;

SELECT SUM(salary) 和,AVG(salary) 平均值,MAX(salary) 最高, MIN(salary) 最低,COUNT(salary) 个数 FROM employees;


#---2,参数支持的类型

SELECT MAX(`last_name`),MIN(`last_name`) FROM employees;
SELECT COUNT(`last_name`) FROM employees;
SELECT COUNT(`commission_pct`) FROM employees;

#---3,是否忽略null值
SELECT SUM(`commission_pct`),AVG(`commission_pct`) FROM employees;
NULL+任何数=NULL
SELECT MAX(`commission_pct`),MIN(`commission_pct`) FROM employees;

#---4,和distinct搭配
SELECT SUM(DISTINCT `salary`),SUM(`salary`) FROM employees;
SELECT COUNT(DISTINCT `salary`),COUNT(`salary`) FROM employees;

#---5,count函数
SELECT COUNT(`salary`) FROM employees;
SELECT COUNT(*) FROM employees;               #统计个数
SELECT COUNT(1) FROM employees;               #()里面可以增加一个常量值,统计个数

    #效率:MYISAM存储引擎下,count(*)的效率最高
        #INNODB存储引擎下,count(*)和count(1)的效果差不多,比count(字段)要高一些

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值