zoukankan      html  css  js  c++  java
  • mysql分组函数及其用例

    功能:用作统计使用,又称为聚合函数或统计函数或组函数

    分类sum 求和、avg 平均值、max 最大值 、min 最小值 、count 计算个数

    特点

    1sumavg一般用于处理数值型,maxmincount可以处理任何类型

    2、以上分组函数都忽略null

    3、可以和distinct搭配实现去重的运算

    4count函数,一般使用count(*)用作统计行数

    5、和分组函数一同查询的字段要求是group by后的字段

    数据库结构图:

    1、简单的使用

    SELECT SUM(salary) FROM employees; 

    SELECT AVG(salary) FROM employees;

    SELECT MIN(salary) FROM employees;

    SELECT MAX(salary) FROM employees;

    SELECT COUNT(salary) FROM employees;

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

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

    2、参数支持哪些类型

     SELECT SUM(last_name) ,AVG(last_name) FROM employees; //sum、avg一般用于处理数值型
    SELECT SUM(hiredate) ,AVG(hiredate) FROM employees;
    SELECT MAX(last_name),MIN(last_name) FROM employees; // maxmin、count可以处理任何类型
    SELECT MAX(hiredate),MIN(hiredate) FROM employees;
    SELECT COUNT(commission_pct) FROM employees;
    SELECT COUNT(last_name) FROM employees;

    3、是否忽略null

    //分组函数是会忽略字段为null的
    SELECT MAX(commission_pct) ,MIN(commission_pct) FROM employees;
    SELECT COUNT(commission_pct) FROM employees;
    SELECT commission_pct FROM employees;

    4、和distinct搭配

    SELECT SUM(DISTINCT salary),SUM(salary) FROM employees; 
    SELECT COUNT(DISTINCT salary),COUNT(salary) FROM employees;

    5count函数的详细介绍

    SELECT COUNT(salary) FROM employees; //如果salary字段有null,则不会被统计
    SELECT COUNT(*) FROM employees; //如果当前表中所有字段都为null时,则不会被统计,某个字段为null还是会被统计的,一般count(*)用来统计行数
    SELECT COUNT(1) FROM employees; //会在当前表添加一列新的字段,字段中全是1,然后统计1的行数

    效率:

    MYISAM存储引擎下,COUNT(*)的效率高

    INNODB存储引擎下,COUNT(*)COUNT(1)的效率差不多,比COUNT(字段)要高一些

     6、和分组函数一同查询的字段有限制

     SELECT AVG(salary),employee_id  FROM employees; //查询的结果employee_id是没有意义的,和分组函数一同查询的字段要求是group by后的字段
  • 相关阅读:
    python模块—socket
    mac os系统的快捷键
    教你如何将UIImageView视图中的图片变成圆角
    关于ASP.NET MVC
    iOS 日期格式的转换
    将App通过XCode上传到AppStore 出现这个错误“An error occurred uploading to the iTunes Store”的解决方法
    关于MAC OS下面两个软件的功能改进——Dictionary和Fit 输入法
    分享一下上个星期的香港行程
    【博客园IT新闻】博客园IT新闻 iPhone 客户端发布
    解决Entity Framework Code First 的问题——Model compatibility cannot be checked because the database does not contain model metadata
  • 原文地址:https://www.cnblogs.com/gtx690/p/11090996.html
Copyright © 2011-2022 走看看