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

SQL 函数

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

AVG() - 返回平均值

COUNT() - 返回行数

MAX() - 返回最大值

MIN() - 返回最小值

SUM() - 返回总和

FIRST() - 返回第一个记录的值

LAST() - 返回最后一个记录的值

GROUP BY

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

语法:

sql 复制代码
SELECT columns
FROM table_name
GROUP BY column_name;

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

示例:

查询全校所有班级

sql 复制代码
SELECT clazz AS 班级
FROM students
GROUP BY clazz;

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

sql 复制代码
SELECT clazz AS 班级,age AS 年龄
FROM students
GROUP BY clazz,age;

AVG()平均值函数

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

语法:

sql 复制代码
SELECT AVG(column_name) FROM table_name

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

示例:

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

sql 复制代码
SELECT clazz AS 班级,AVG(age) AS 平均年龄
FROM students
GROUP BY clazz
ORDER BY AVG(age);

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

sql 复制代码
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;

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

相关推荐
倔强的石头_2 天前
《Kingbase护城河》——数据库存储空间全景探测与精细化瘦身实战
数据库
云技纵横2 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
冬奇Lab3 天前
每日一个开源项目(第134篇):Zvec - 阿里开源的嵌入式向量数据库,向量搜索界的 SQLite
数据库·人工智能·llm
ClouGence3 天前
Oracle CDC 架构优化:从主库直连到 DataGuard 备库同步
数据库·后端·oracle
无响应de神3 天前
三、用户与权限管理
数据库·mysql
通信小呆呆4 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick4 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee4 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
Alsn864 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e4 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统