精华内容
下载资源
问答
  • 聚合函数

    千次阅读 2017-02-22 12:54:14
    聚合函数
            聚合函数,又叫做分组函数,多行处理函数。
    
    count	取得记录数
    sum	求和
    avg	取平均
    max	取最大的数
    min	取最小的数

    一count

    查询所有的员工数

    mysql> select count(*) from emp;
    +----------+
    | count(*) |
    +----------+
    |       14 |
    +----------+
    取得津贴不为NULL的员工

    mysql> select count(comm) from emp;
    +-------------+
    | count(comm) |
    +-------------+
    |           4 |
    +-------------+
    注:count(字段名)会自动去掉NULL,不需要手动添加过滤条件。

    二sum

    Sum可以取得某一个列的和,null会被忽略。

    取得津贴的合计

    mysql> select sum(comm) from emp;
    +-----------+
    | sum(comm) |
    +-----------+
    |   2200.00 |
    +-----------+

    三avg

    取得某一列的平均值

    取得平均薪水

    mysql> select avg(sal) from emp;
    +-------------+
    | avg(sal)    |
    +-------------+
    | 2073.214286 |
    +-------------+

    四max

    取得某个一列的最大值

    取得最高薪水

    mysql> select max(sal) from emp;
    +----------+
    | max(sal) |
    +----------+
    |  5000.00 |
    +----------+

    五min

    取得某个一列的最小值

    取得最低薪水

    mysql> select min(sal) from emp;
    +----------+
    | min(sal) |
    +----------+
    |   800.00 |
    +----------+

    六组合聚合函数

    可以将这些聚合函数都放到select中一起使用

    mysql> select count(*), sum(sal), avg(sal), max(sal), min(sal) from emp;
    +----------+----------+-------------+----------+----------+
    | count(*) | sum(sal) | avg(sal)    | max(sal) | min(sal) |
    +----------+----------+-------------+----------+----------+
    |       14 | 29025.00 | 2073.214286 |  5000.00 |   800.00 |
    +----------+----------+-------------+----------+----------+
    展开全文
  • 数据库聚合函数

    千次阅读 2019-06-14 15:20:27
    聚合函数 语法 聚合函数会自动忽略空值,省去手动写sql将空值null排除 聚合函数不能直接加载where语句后面 sum()计算总和 获取薪水sal的总和 select sum(sal) from emp; 获取薪水和补助的总和(补助含有null) ...

    聚合函数

    • 语法
    • 聚合函数会自动忽略空值,省去手动写sql将空值null排除
    • 聚合函数不能直接加载where语句后面

    sum()计算总和

    获取薪水sal的总和

    select sum(sal) from emp;
    

    获取薪水和补助的总和(补助含有null)

    错误写法

    原因:优先级不一样,首先sql会先把括号里面的计算,所有就存在sal+comm = null,而当括号里面的每一个都计算完毕,就会存在一个或者多个null的值,且聚合函数又会将null忽略,所以就会出错

    select sum(sal+comm) from emp;
    

    正确写法

    将comm用ifnull()函数处理一下

    select sum(sal+ifnull(comm,0)) from emp;
    

    avg() 平均值

    获取薪水的平均值

    select avg(sal) as avgSal from emp;
    

    max()最大值(同时也可以计算出日期date的最大值)

    获取最高薪水

    select max(sal) as maxSal from emp;
    

    获取最大日期

    select max(date) as maxDate from emp;
    

    错误:获取最高薪水的员工

    原因:聚合函数只用来比较,统计,计算,并不会定位到某一条数据,如果有多个相同的数据就会不对应

    所以:在使用聚合函数不建议这样写。

    select ename,max(sal) from emp;
    

    min()取最小值

    获取最低薪水

    select min(sal) as minSal from emp;
    

    count()获取的总数

    获取员工的总数

    //建议使用id,不使用“*”,不使用“*”,上篇文章已说明
    select count(id) as userCount from emp;
    

    一、假设一共有14人,4人有补助
    1.获取有补助comm的人数

    select count(comm) from emp;
    

    2.获取没有补助的人数(聚合函数只能统计不为null的,那么如何统计补助为null的呢?)

    思路:在获取的时候添加限制条件,统计出满足comm == null的数据,然后将统计出来的次数放入count()中

    select coumt(comm) from emp where comm is null;
    

    组合计算函数

    • sum、avg、max、min、count这些函数可以一起使用
    select count(*),sum(sal),avg(sal),max(sal),min(sal) from emp;
    
    展开全文
  • 手把手教你mysql()聚合函数

    千次阅读 2013-11-13 21:39:30
    手把手教你mysql()聚合函数   一: 聚合函数 1.1. COUNT()函数 1. COUNT()函数用来统计记录的条数; 2. 与GOUPE BY 关键字一起使用; 我这边仍然使用的是t_student表,大家可以自己建表练习,没必要跟我完全...

    手把手教你mysql(五)聚合函数

     

    一: 聚合函数

    1.1. COUNT()函数

    1. COUNT()函数用来统计记录的条数

    2. 与GOUPE BY 关键字一起使用;

    我这边仍然使用的是t_student表,大家可以自己建表练习,没必要跟我完全相同.

    例: 查询t_student表中一共有多少学生

    Mysql>SELECT COUNT(*) AS 'total' FROM t_student;

    例: 查询t_student表中每个年级各有多少学生

    Mysql>SELECT COUNT(*) AS 'total',gradeName FROM t_student GROUP BY gradeName;

     

    1.2. SUM()函数

    1. SUM()函数是求和函数;

    2. 与GOUPE BY 关键字一起使用;

    例: 查询t_student表中所有学生的年龄总和

    Mysql>SELECT SUM(age) AS '年龄总和' FROM t_student;

     

    例: 查询t_student表中所有学生的年龄总和并按年级分组

    Mysql>SELECT SUM(age) AS '年龄总和',gradeName FROM t_student GROUP BY gradeName;

     

    1.3.   AVG()函数

    1. AVG()函数是求平均值的函数;

    2. 与GOUPE BY 关键字一起使用;

    例: 查询t_student表中所有学生的平均年龄

    Mysql>SELECT AVG(age) AS '平均年龄' FROM t_student;

     

    例: 查询t_student表中所有学生的平均年龄并按年级分组

    Mysql>SELECT AVG(age) AS '平均年龄',gradeName FROM t_student GROUP BY gradeName;

     

    1.4. MAX()函数

    1. MAX()函数是求最大值的函数;

    2. 与GOUPE BY 关键字一起使用;

    例: 查询t_student表中所有学生中的年龄最大的学生

    Mysql>SELECT MAX(age) AS '最大年龄' FROM t_student;

    例: 查询t_student表中每个年级年龄最大的学生

    Mysql>SELECT MAX(age) AS '最大年龄',gradeName FROM t_student GROUP BY gradeName;

    1.5. MIN()函数

    1. MIN()函数是求最小值的函数;

    2. 与GOUPE BY 关键字一起使用;

    例: 查询t_student表中所有学生中的年龄最小的学生

    Mysql>SELECT MIN(age) AS '最小年龄' FROM t_student;

    例: 查询t_student表中每个年级年龄最小的学生

    Mysql>SELECT MIN(age) AS '最小年龄',gradeName FROM t_student GROUP BY gradeName;

     

    二: 总结

    聚合函数到这边就结束了,大家自己消化下,下节将为大家带来连接查询,谢谢大家!再见


    2013/11/13 旷世绝伦

    展开全文
  • 聚合函数 min 求列中的最小值 max 求列中的最大值 avg 求列中的平均值 sum 求列中的汇总值 count 求列中值的个数 注意: null不参与聚合统计 与聚合无关的列,不能出现在查询字段中 date, char类型不能...

    Oracle 聚合函数/分组

    五种聚合函数

    • min 求列中的最小值
    • max 求列中的最大值
    • avg 求列中的平均值
    • sum 求列中的汇总值
    • count 求列中值的个数

    注意:

    null不参与聚合统计

    与聚合无关的列,不能出现在查询字段中

    date, char类型不能进行sum和avg

    select avg(comm), avg(nvl(comm, 0)), sum(comm)/count(1) from emp;-- null如何统计
    
    -- 求表中总行数
    select count(*) from emp;		-- 最差
    select sum(1) from emp;			-- 最好
    select count(1) from emp;
    select count(empno) from emp;
    

    group by分组

    将查询结果,按照一个列(或者多个列)的值,进行分组,再在每个组的基础上,采用聚合函数进行统计(求这个组中的最大、最小、平均等统计值)

    例如:

    单个列:按照gender分组,按照job分组,按照deptno分组

    -- 求每个部门中的雇员人数和平均薪水
    select deptno, count(empno), avg(sal)
        from emp
            group by deptno;
    

    多个列:先按照deptno分组,然后每个deptno再按照job分组

    -- 求每个部门分别有哪些职位
    -- 方法一:使用distinct
    select distinct deptno, job
        from emp
            where job is not null
                order by deptno asc;
    -- 方法二:分组
    select deptno, job
        from emp
            where job is not null
                group by deptno, job
                    order by deptno asc;
    
    -- 每个部门内不同职位的人数
    select deptno, job, count(empno)
        from emp
            where job is not null
                group by deptno, job
                    order by deptno asc;
    

    having

    在分组统计的结果上再对统计的值进行筛选(不同于where,where是在group by之前就已经筛选过了)

    -- 求每个部门的最低薪水和最高薪水差额
    -- 1、低于1000的临时工不纳入此次统计
    -- 2、求贫富差距超过2000的部门
    select min(sal), max(sal), deptno
        from emp
            where sal >= 1000
                group by deptno
                    having max(sal) - min(sal) > 2000;
    

    思考:

    1. 根据雇员的薪水等级分组,求每个等级下各有多少个人数?
    select count(1), grade
        from emp join salgrade
            on sal between losal and hisal
                group by grade
                    order by grade asc;
    
    1. 根据程序员自定义的薪水范围作为等级条件进行分组,求每个等级下各有多少个人数?

    自定义分组列(表达式)

    select count(empno) emps,
        case
            when sal between 0 and 999 then 1
            when sal between 1000 and 1999 then 2
            when sal between 2000 and 2999 then 3
            when sal between 3000 and 3999 then 4
            else 5
        end grade
            from emp
                group by
                case
                    when sal between 0 and 999 then 1
                    when sal between 1000 and 1999 then 2
                    when sal between 2000 and 2999 then 3
                    when sal between 3000 and 3999 then 4
                    else 5
                end
                    order by grade asc;
    
    展开全文
  • LitePal中一共提供了count()、sum()、average()、max()和min()这聚合函数,基本上已经将SQL语句当中最常用的几种聚合函数都覆盖了,那么下面我们就来对这聚合函数的用法一一进行学习。 count() count...
  • 1.case when then 看下面这个语句大家应该懂 case sex when ‘1’ then ‘男’ when ‘2’ then '女’ else ‘其他’ end –case搜索函数 case when sex = ‘1’ then ‘男’ ...在网上找了大概有种 Max ...
  • ORACLE 常用函数——聚合函数

    千次阅读 2018-07-19 14:02:31
    ORACLE 常用函数    这个系列我将整理一些日常我们经常使用到的ORACLE函数,鉴于篇幅太长,我体会按下面分类来整理、汇总这些常用的ORACLE函数,如果...1: 聚合函数 2: 日期函数 3: 字符串函数 4...
  • 1、聚合函数简介 写在前面:为了方便理解可以将一张表的看做是一个二维矩阵,一条数据就是一行...这是五大最常用的聚合函数,当然随着SQL的不短发展扩充聚合函数越来越多! 2、数据库表的构建 create table `emp`
  • MySQL分组函数与聚合函数

    千次阅读 2019-09-19 16:05:06
    ——GROUP BY 语句用于结合聚合函数,根据一个或多个列对结果集进行分组,相同属性的数据为一个组。通常,在每组中通过聚合函数来可以计算组中最大,最小等。 ——如果group by带有having,则只有满足having后面的...
  • Android数据库高手秘籍(八)——使用LitePal的聚合函数

    万次阅读 多人点赞 2014-12-04 09:09:01
    但是呢,在SQL语句当中,有一种查询是比较特殊的,就是聚合函数查询,它不像传统查询一样是将表中的某些列的数据查询出来,而是将查询结果进行聚合和统计,最终将统计后的结果进行返回。因此,任何一个关系型数据库...
  • oracle的数学函数和聚合函数
  • Hive聚合函数及采样函数详解

    万次阅读 2015-06-03 09:01:56
    本文主要使用实例对Hive内建的一些聚合函数、分析函数以及采样函数进行比较详细的讲解。
  • MySQL 聚合函数大全

    2015-10-09 14:26:58
    以下内容基于MySQL 5.6及更高,部分函数5.5也基本适用,更低版本请参考对应版本手册,其内容整理自官方。 mysql常用函数被分为类,分别为: ... ①Aggregate:基于一列的多个值返回单一值(聚合函数)...
  • 重点学习聚合函数、数学函数、字符串函数、数据类型转换函数、日期函数等 聚合函数 avg() count() max() min() sum() stddev() stddev_pop() 聚合函数常与select语句的group by子句一起使用。除了count()函数之外,...
  • mysql聚合函数和分组

    千次阅读 2014-09-20 14:22:11
    聚合函数,也叫做组合函数 # 求所有数据数 # count不统计null ,统计的是记录数 SELECT COUNT(comm) FROM emp; SELECT COUNT(*) FROM emp; SELECT COUNT(DISTINCT deptno) FROM emp; # 求平均数,忽略空值...
  • Hibernate常用的聚合函数

    千次阅读 2015-02-04 10:39:39
    //五大函数: package test; import org.hibernate.Session; import org.hibernate.Transaction; import util.HibernateUtil; public class FunTest {  public static void main(String[] args) {...
  • 前面因为对数据库函数不熟悉,mysql group by,对不是分组条件的会默认返回第一个,然而infox不是,我就懵逼了..所以还是要掌握基础知识。 主要是自用: 参考了一些人的博客: ...常用函数 聚合函数 ...
  • Oracle SQL 提供了用于执行特定操作(超级便捷~)的专用函数。这些函数大大增强了(岂止是大大的~) SQL 语言的功能。函数可以接受零个或者多个输入参数,并返回一个输出结果。
  • 1. 聚合函数 2. GROUP BY语句 2.1 去重 2.2 与聚合函数一起使用 2.2.1count(*) 2.2.2count(col) 2.2.3count(distinct col) 2.2.4 sum(col) 2.2.5 avg(col) 2.2.6 min(col) 2.2.7 max(col) 2.2.8 GROUP BY...
  • Flink流计算之聚合函数

    千次阅读 2020-08-07 18:18:34
    Flink使用ReduceFunction来逐步聚合窗口的元素。 ReduceFunction可以定义像这样使用: val input: DataStream[(String, Long)] = ... input .keyBy(<key selector>) .window(<window assigner>) ....
  • 传统的聚合函数用法 虽说是聚合函数,但它的用法其实和传统的...但是在select语句当中我们通常不会再去指定列名,而是将需要统计的列名传入到聚合函数当中,那么执行select语句使用的还是SQLiteDatabase中的rawQu
  • 常用的聚合函数:min()求列中最小数值,max()求列中最大数值,avg()求平均值,sum()求列中字段对应数值的总和,count()求列的总条数 3 join连接 sql中的连接查询有三种方式:内连接,外连接,交叉连接 ...
  • SQL Server汇总数据之聚合函数与分组

    千次阅读 2015-12-25 23:31:27
    主要用于对数据集的的数据进行汇总统计等操作,基本是聚合函数。 聚合的基本理念:不是返回所有指定的行,而是返回一行计算得到的值(前面指定的行 的某些数据的汇总)。它们汇总了原始数据集。 1、计算总数、...
  • ...value 字段按照不同的 value求百分比,然后取第位数据。 select percentile(value,99),value from disk_free   转载于:https://www.cnblogs.com/shi-qi/articles/9537856.html
  • 聚合函数(count,max,min,sum,avg) 聚合函数的作用: – 总数(count函数) select count() as 男性个数 from students where gender=1; select count() as 女性个数 from students where gender=1; – 最大值...
  • SQL聚合函数:相当于打包好的函数,只需要放入参数即可得到答案 聚合函数对Null不计算 如果一行的数据都是null,count(*)包含对空值行,重复行的统计 MAX(最大值) MIN(最小值) AVG(平均值) SUM(和运算) COUNT(数量:记录...
  • 一、SQLServer里面的常用的聚合函数。 1.Sum(和)-—对于NULL值默认为0 2.MAX(最大值)MIN(最小值) 3.AVG (平均值)—不统计空值,例如存在有四个人,但是只有三个人有成绩,平均成绩为:总和/3 4....
  • round()四舍入。 select round ( 123.456 , 2 ), round ( 123.456 ,- 2 ), round ( 123.45 , 0 ), round ( 123.45 ) from dual; round(123.456,2),表示保留小数点后两位,若是-2的话,就是表示小数点...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 54,015
精华内容 21,606
关键字:

五大聚合函数