聚合函数:COUNT统计记录的条数、SUM求和函数、AVG求平均值、MAX求最大值、MIN求最小值
 
一、COUNT练习:
1、统计学校一共有多少个学生:
mysql> SELECT COUNT(*) AS 'Total' FROM t_student;
+-------+
| Total |
+-------+
| 13 |
+-------+
1 row in set (0.01 sec)
2、统计每个年级各有多少学生:
mysql> SELECT COUNT(*) AS 'Total',gradeName FROM t_student GROUP BY gradeName;
+-------+-----------+
| Total | gradeName |
+-------+-----------+
| 6 | 一年级 |
| 3 | 三年级 |
| 4 | 二年级 |
+-------+-----------+
3 rows in set (0.00 sec)
3、在2的基础上添加学生总数:
mysql> select IFNULL(gradeName,'学生总数'),COUNT(*) AS Total from t_student Group By gradeName with Rollup;
+----------------------------------+-------+
| IFNULL(gradeName,'学生总数') | Total |
+----------------------------------+-------+
| 一年级 | 6 |
| 三年级 | 3 |
| 二年级 | 4 |
| 学生总数 | 13 |
+----------------------------------+-------+
4 rows in set (0.00 sec)
二、SUM求和函数:
1、查询所有学生的年龄总和:
mysql> SELECT SUM(age) AS '年龄总和' FROM t_student;
+--------------+
| 年龄总和 |
+--------------+
| 295 |
+--------------+
1 row in set (0.00 sec)
2、在1的基础上添加一班级为单位进行分组
mysql> SELECT SUM(age) AS '年龄总和',IFNULL(gradeName,'年级总年龄') AS '年级' FROM t_student GROUP BY gradeName WITH ROLLUP;
+--------------+-----------------+
| 年龄总和 | 年级 |
+--------------+-----------------+
| 135 | 一年级 |
| 66 | 三年级 |
| 94 | 二年级 |
| 295 | 年级总年龄 |
+--------------+-----------------+
4 rows in set (0.00 sec)
三、AVG平均值函数
1、查看全年级的平均年龄
mysql> SELECT AVG(AGE) AS '平均年龄' FROM t_student;
+--------------+
| 平均年龄 |
+--------------+
| 22.6923 |
+--------------+
1 row in set (0.00 sec)
2、在1的基础上进行按班级分组并在分组后统计总的平均年龄
mysql> SELECT AVG(AGE) AS '平均年龄',IFNULL(gradeName,'年级平均年龄') AS '年级平均年龄' FROM t_student GROUP BY gradeName WITH ROLLUP;
+--------------+--------------------+
| 平均年龄 | 年级平均年龄 |
+--------------+--------------------+
| 22.5000 | 一年级 |
| 22.0000 | 三年级 |
| 23.5000 | 二年级 |
| 22.6923 | 年级平均年龄 |
+--------------+--------------------+
4 rows in set (0.00 sec)
四、MAX求最大值:
1、查找每个年级的最大年龄并以年级进行排序:
mysql> SELECT MAX(age) AS '年龄最大',gradeName AS '年级' FROM t_student GROUP BY gradeName ;
+--------------+-----------+
| 年龄最大 | 年级 |
+--------------+-----------+
| 23 | 一年级 |
| 23 | 三年级 |
| 26 | 二年级 |
+--------------+-----------+
3 rows in set (0.00 sec)
五、MIN求最小值
1、查询每个年级中的最小年龄,并以年级进行排序:
mysql> SELECT MIN(age) AS'年龄最小',gradeName AS '年级' FROM t_student GROUP BY gradeName;
+--------------+-----------+
| 年龄最小 | 年级 |
+--------------+-----------+
| 21 | 一年级 |
| 20 | 三年级 |
| 21 | 二年级 |
+--------------+-----------+
3 rows in set (0.00 sec)
 
 
 
 
 
 
 
 
 

深入学习之mysql(四)聚合函数的更多相关文章

  1. MySQL数据库聚合函数

    +++++++++++++++++++++++++++++++++++++++++++标题:MySQL数据库聚合函数时间:2019年2月25日内容:MySQL数据库聚合函数重点:MySQL数据库聚合函 ...

  2. MySQL的聚合函数

    MySQL的聚合函数 网站:https://www.runoob.com/mysql/mysql-functions.html 函数名 功能描述 count() 计数 sum() 求和 avg() 平 ...

  3. MongoDB学习总结(三) —— 常用聚合函数

    上一篇介绍了MongoDB增删改查命令的基本用法,这一篇来学习一下MongoDB的一些基本聚合函数. 下面我们直奔主题,用简单的实例依次介绍一下. > count() 函数 集合的count函数 ...

  4. mysql之聚合函数、group by、having

    sql中提供聚合函数可以用来统计,求和,求最值等 那么聚合函数有哪些呢? COUNT    统计行数量 SUM         求某一列的和 AVG          求某一列的平均值 MAX  求某 ...

  5. Hive学习之自己定义聚合函数

    Hive支持用户自己定义聚合函数(UDAF),这样的类型的函数提供了更加强大的数据处理功能. Hive支持两种类型的UDAF:简单型和通用型.正如名称所暗示的,简单型UDAF的实现很easy,但因为使 ...

  6. mysql sum聚合函数和if()函授的联合使用

    今天去面试遇到一个数据库试题,首先说一下表结构如下: 表结构:mytest 表数据:mytest 要查询的结果如下: 在本题目中,需要用到sum聚合函数和if函数 sql如下: ,)) ,)) AS ...

  7. Oracle学习(十一)聚合函数

    AVG() 求平均数 --查询某列的平均值 SELECT AVG(列) FROM 表 COUNT()查询条数 -- 查询所有记录的条数 select count(*) from 表; -- 查询对应列 ...

  8. mysql 从聚合函数group by到sql_mode

    说到group by, 想必大家都不陌生, 就是对查询的数据进行分组,我们可以通过该操作实现一些特殊需求,比如去重. 最近在项目中使用HQL:" from TSjrz where CBh = ...

  9. python学习笔记(四)— 函数

    一.函数是什么? 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的,编程中的函数在英文中也有很多不同的叫法.在BASIC中叫做subroutine(子过程或子程序),在Pasc ...

  10. swift学习初步(四)-- 函数

    好了,让我们开始接着前几天写的系列博客开始今天的这篇博客.在swift里面如果你需要定义一个方法的话,你需要使用关键字:func,请看下面的这段代码: func sayHello(name:Strin ...

随机推荐

  1. LeetCode ZigZag Conversion(将字符串排成z字型)

    class Solution { public: string convert(string s, int nRows) { string a=""; int len=s.leng ...

  2. Java中的字符串问题

    本文章分为三个部分: 1.创建字符串对象的两种方式以及它们的存储方式 2.String a = new String("a")创建了几个对象的问题 3.字符串小例子 ------- ...

  3. UVA 1642 Magical GCD(gcd的性质,递推)

    分析:对于区间[i,j],枚举j. 固定j以后,剩下的要比较M_gcd(k,j) = gcd(ak,...,aj)*(j-k+1)的大小, i≤k≤j. 此时M_gcd(k,j)可以看成一个二元组(g ...

  4. python操作文件目录

    # 查看当前目录的绝对路径: >>> os.path.abspath('.') /Users/NaCl/Documents/GitHub #同样的道理,要拆分路径时,也不要直接去拆字 ...

  5. java Html&JavaScript面试题:用table显示n条记录,每3行换一次颜色,即1,2,3用红色字体,4,5,6用绿色字体,7,8,9用红颜色字体。

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. Java程序调用自动关机指令 1分钟内自动关机

    package com.swift;//可以不要这句 import java.io.IOException; public class Shutdown100 { public static void ...

  7. c 语言技巧

    位运算 & 位逻辑与 | 位逻辑或 ^ 位逻辑异或 - 位逻辑反 >> 右移 << 左移 通过对数据本身的01编码进行处理,速度稍微快于普通运算符 如,10 / 2 = ...

  8. django+xadmin在线教育平台(四)

    3-2 配置表单页面 必要的该说的,该了解的 前置条件: 你已经学习了前面教程.将项目的文件夹目录结构,setting配置等修改完毕与我保持一致. 本节通过Django快速的配置一个留言板页面来学习 ...

  9. Linux dmidecode命令

    1.linux系统自带的dmidecode工具查询服务器硬件信息 dmidecode 用于获取服务器的硬件信息,通常是在不打开计算机机箱的情况下使用该命令来查找硬件详细信息 这个命令可以查看内存的几乎 ...

  10. nginx负载均衡核心组件介绍

    一.nginx upstream 模块介绍 1.upstream模块介绍 nginx的负载均衡功能依赖于ngx_http_upstream_module模块,所支持的代理方式包括 proxy_pass ...