数据库MySQL学习——day4(更多查询操作与更新数据)

文章目录

1、聚合函数(Aggregate Functions)

聚合函数用于对一组值执行计算,常用于统计数据。

常见聚合函数:

函数 作用
COUNT() 统计记录条数
SUM() 计算总和
AVG() 计算平均值
MAX() 返回最大值
MIN() 返回最小值
  • 示例:统计学生和成绩数据
sql 复制代码
-- 统计学生表中的学生总数
SELECT COUNT(*) AS student_count FROM student;

-- 统计成绩表中的成绩条数
SELECT COUNT(*) AS score_count FROM grade;

-- 计算平均成绩
SELECT AVG(score) AS avg_score FROM grade;

-- 查询最高成绩
SELECT MAX(score) AS max_score FROM grade;

-- 查询最低成绩
SELECT MIN(score) AS min_score FROM grade;
  • 注意:聚合函数可以与 WHERE 子句一起使用来限定计算范围。

2、分组查询(GROUP BY)

GROUP BY 子句用于将查询结果按某个字段的值进行分组,常与聚合函数连用。

  • 示例:按年龄分组,统计学生人数
sql 复制代码
SELECT age, COUNT(*) AS age_group_count
FROM student
GROUP BY age;
  • 示例:按学生 ID 分组,计算每个学生的平均成绩
sql 复制代码
SELECT student_id, AVG(score) AS avg_score
FROM grade
GROUP BY student_id;
  • GROUP BY 后面跟的是用于分组的字段,SELECT 中除聚合函数外的字段必须在 GROUP BY 中出现。

3、更新数据(UPDATE)

语法结构:

sql 复制代码
UPDATE 表名
SET 字段1 = 值1, 字段2 = 值2, ...
WHERE 条件;
  • 示例:修改某个学生的年龄
sql 复制代码
UPDATE student
SET age = 20
WHERE student_id = 1;
  • 注意:

  • 一定要加 WHERE 限定条件,否则会更新整个表的所有记录。

  • 可同时更新多个字段。

4、删除数据(DELETE)

语法结构:

sql 复制代码
DELETE FROM 表名
WHERE 条件;
  • 示例:删除成绩为 0 的记录
sql 复制代码
DELETE FROM grade
WHERE score = 0;
  • 小心使用 DELETE,尤其要注意是否加了WHERE条件。

5、进阶练习示例

  • 查询每个学生的成绩条数与总分
sql 复制代码
SELECT student_id, COUNT(*) AS score_count, SUM(score) AS total_score
FROM grade
GROUP BY student_id;
  • 将 GPA 小于 2.0 的学生标记为"需关注"状态(假设有 status 字段)
sql 复制代码
UPDATE student
SET status = '需关注'
WHERE gpa < 2.0;
  • 删除所有分数低于 30 的记录
sql 复制代码
DELETE FROM grade
WHERE score < 30;

6、 今日小结

内容 关键词 作用
聚合函数 COUNT(), AVG(), MAX() 等 快速计算表中数值统计
分组查询 GROUP BY 根据字段分组后进行统计
更新数据 UPDATE ... SET ... WHERE 修改表中已有记录
删除数据 DELETE FROM ... WHERE 删除满足条件的记录
相关推荐
Hello_Embed11 分钟前
STM32HAL 快速入门(十九):UART 编程(二)—— 中断方式实现收发及局限分析
笔记·stm32·单片机·嵌入式硬件·学习
天上的光28 分钟前
关于学习的一些感悟
学习
步步为营DotNet1 小时前
5-2EFCore性能优化
数据库·性能优化·.net
red_redemption1 小时前
自由学习记录(95)
学习
2501_920047032 小时前
Redis-集群
数据库·redis·bootstrap
半夏陌离2 小时前
SQL 拓展指南:不同数据库差异对比(MySQL/Oracle/SQL Server 基础区别)
大数据·数据库·sql·mysql·oracle·数据库架构
东风西巷2 小时前
Balabolka:免费高效的文字转语音软件
前端·人工智能·学习·语音识别·软件需求
旋转的油纸伞2 小时前
SQL表一共有几种写入方式
数据库·sql
半夏陌离2 小时前
SQL 入门指南:排序与分页查询(ORDER BY 多字段排序、LIMIT 分页实战)
java·前端·数据库
isyoungboy2 小时前
SQL高效处理海量GPS轨迹数据:人员gps轨迹数据抽稀实战指南
数据库·sql