• SQL零基础入门教程,贼拉详细!贼拉简单! 速通数据库期末考!(十)


    SQL 函数

    SQL 拥有很多可用于计数和计算的内建函数。 比如:

    AVG() - 返回平均值
    COUNT() - 返回行数
    MAX() - 返回最大值
    MIN() - 返回最小值
    SUM() - 返回总和
    FIRST() - 返回第一个记录的值
    LAST() - 返回最后一个记录的值

    GROUP BY

    学习SQL函数前,先学习 GROUP BY 命令,因为 GROUP BY 经常与聚合函数一起使用,根据一个或多个列对结果集进行分组(将相同的字段值分为一组)

    语法:

    SELECT columns
    FROM table_name
    GROUP BY column_name;
    
    • 1
    • 2
    • 3

    columns: 要查询的列名
    table_name:表名
    column_name:用于分组操作的字段名,可以为多个

    示例:
    查询全校所有班级

    SELECT clazz AS 班级
    FROM students
    GROUP BY clazz;
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    查询所有班级及各班级学生的年龄分组

    SELECT clazz AS 班级,age AS 年龄
    FROM students
    GROUP BY clazz,age;
    
    • 1
    • 2
    • 3

    image.png

    AVG()平均值函数

    AVG() 函数返回数值列的平均值

    语法:

    SELECT AVG(column_name) FROM table_name
    
    • 1

    column_name:字段名(必须是数值字段)
    table_name:表名

    示例:
    查询各班级所有学生的平均年龄,并按平均年龄升序排列:

    SELECT clazz AS 班级,AVG(age) AS 平均年龄
    FROM students
    GROUP BY clazz
    ORDER BY AVG(age);
    
    • 1
    • 2
    • 3
    • 4

    关联学生数据表和学生成绩表,查询每位学生的平均成绩,并按平均成绩降序排列:

    SELECT a.id AS 学生ID,
    			 name AS 姓名,
    			 AVG(score) AS 平均成绩,
    			 clazz AS 班级
    FROM score AS a
    INNER JOIN students AS b
    ON a.id = b.id
    GROUP BY a.id
    ORDER BY 平均成绩 DESC;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    在这里插入图片描述

    本专栏将持续更新,对数据库SQL感兴趣的同学可以关注一下,谢谢!

  • 相关阅读:
    不知道怎么把英文文档翻译成中文?手把手教你怎么操作
    Java集合大总结——Set的简单使用
    代码签名证书适用于个人开发者吗?
    4.1 初探Spring Boot
    【航天物流组参赛ReadMe.md】
    Windows10系统安装telnet命令
    java生成视频缩略图
    APM32F103VCT6 写内部Flash失败解决方案(亲试可用)
    让我们进入面向对象的世界(三)
    软件供应商与企业签订的保密协议
  • 原文地址:https://blog.csdn.net/lrn521zsd/article/details/134495080