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

文章目录

  • 1、聚合函数(Aggregate Functions)
  • 2、分组查询(GROUP BY)
  • 3、更新数据(UPDATE)
  • 4、删除数据(DELETE)
  • 5、进阶练习示例
  • 6、 今日小结

1、聚合函数(Aggregate Functions)

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

常见聚合函数:

函数作用
COUNT()统计记录条数
SUM()计算总和
AVG()计算平均值
MAX()返回最大值
MIN()返回最小值
  • 示例:统计学生和成绩数据
-- 统计学生表中的学生总数
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 子句用于将查询结果按某个字段的值进行分组,常与聚合函数连用。

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

3、更新数据(UPDATE)

语法结构:

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

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

  • 可同时更新多个字段。

4、删除数据(DELETE)

语法结构:

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

5、进阶练习示例

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

6、 今日小结

内容关键词作用
聚合函数COUNT(), AVG(), MAX() 等快速计算表中数值统计
分组查询GROUP BY根据字段分组后进行统计
更新数据UPDATE … SET … WHERE修改表中已有记录
删除数据DELETE FROM … WHERE删除满足条件的记录

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/78374.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spark-SQL 项目

一、项目概述 &#xff08;一&#xff09;实验目标 统计有效数据条数&#xff1a;筛选出uid、phone、addr三个字段均无空值的记录并计数。提取用户数量最多的前 20 个地址&#xff1a;按地址分组统计用户数&#xff0c;按降序排序后取前 20 名。 &#xff08;二&#xff09;…

Redis的ZSet对象底层原理——跳表

我们来聊聊「跳表&#xff08;Skip List&#xff09;」&#xff0c;这是一个既经典又优雅的数据结构&#xff0c;尤其在 Redis 中非常重要&#xff0c;比如 ZSet&#xff08;有序集合&#xff09;底层就用到了跳表。 &#x1f31f; 跳表&#xff08;Skip List&#xff09;简介 …

2025深圳中兴通讯安卓开发社招面经

2月27号 中兴通讯一面 30多分钟 自我介绍 聊项目 我的优缺点&#xff0c;跟同事相比&#xff0c;有什么突出的地方 Handler机制&#xff0c;如何判断是哪个消息比较耗时 设计模式&#xff1a;模板模式 线程的状态 线程的开启方式 线程池原理 活动的启动模式 Service和Activity…

【Castle-X机器人】二、智能导览模块安装与调试

持续更新。。。。。。。。。。。。。。。 【Castle-X机器人】智能导览模块安装与调试 二、智能导览模块安装与调试2.1 智能导览模块安装2.2 智能导览模块调试2.2.1 红外测温传感器测试2.2.2 2D摄像头测试 二、智能导览模块安装与调试 2.1 智能导览模块安装 使用相应工具将智能…

深入理解二叉树遍历:递归与栈的双重视角

二叉树的遍历前序遍历中序遍历后续遍历总结 二叉树的遍历 虽然用递归的方法遍历二叉树实现起来更简单&#xff0c;但是要想深入理解二叉树的遍历&#xff0c;我们还必须要掌握用栈遍历二叉树&#xff0c;递归其实就是利用了系统栈去遍历。特此记录一下如何用双重视角去看待二叉…

Qt Creator中自定义应用程序的可执行文件图标

要在Qt Creator中为你的应用程序设置自定义可执行文件图标&#xff0c;你需要按照以下步骤操作&#xff1a; Windows平台设置方法 准备图标文件&#xff1a; 创建一个.ico格式的图标文件&#xff08;推荐使用256x256像素&#xff0c;包含多种尺寸&#xff09; 可以使用在线工…

Windows11系统中GIT下载

Windows11系统中GIT下载 0、GIT背景介绍0.0 GIT概述0.1 GIT诞生背景0.2 Linus Torvalds 的设计目标0.3 Git 的诞生&#xff08;2005 年&#xff09;0.4 Git 的后续发展0.5 为什么 Git 能成功&#xff1f; 1、资源下载地址1.1 官网资源1.2 站内资源 2、安装指导3、验证是否下载完…

react的fiber 用法

在 React 里&#xff0c;Fiber 是 React 16.x 及后续版本采用的协调算法&#xff0c;它把渲染工作分割成多个小任务&#xff0c;让 React 可以在渲染过程中暂停、恢复和复用任务&#xff0c;以此提升渲染性能与响应能力。在实际开发中&#xff0c;你无需直接操作 Fiber 节点&am…

FPGA前瞻篇-数字电路基础-逻辑门电路设计

模拟信号&#xff1a; 一条随时间连续变化、平滑波动的曲线&#xff0c;比如正弦波。 数字信号&#xff1a; 一条只有高低两个状态&#xff08;0和1&#xff09;&#xff0c;跳变清晰的方波曲线。 在 IC 或 FPGA 的逻辑设计中&#xff0c;我们通常只能处理数字信号&#xff0…

RabbitMQ 基础概念(队列、交换机、路由键、绑定键、信道、连接、虚拟主机、多租户)介绍

本文是博主在梳理 RabbitMQ 知识的过程中&#xff0c;将所遇到和可能会遇到的基础知识记录下来&#xff0c;用作梳理 RabbitMQ 的整体架构和功能的线索文章&#xff0c;通过查找对应的知识能够快速的了解对应的知识而解决相应的问题。 文章目录 一、RabbitMQ 是什么&#xff1f…

机器学习第一篇 线性回归

数据集&#xff1a;公开的World Happiness Report | Kaggle中的happiness dataset2017. 目标&#xff1a;基于GDP值预测幸福指数。&#xff08;单特征预测&#xff09; 代码&#xff1a; 文件一&#xff1a;prepare_for_traning.py """用于科学计算的一个库…

Java面试高频问题(29-30)

二十九、全链路压测&#xff1a;数据隔离与流量 关键技术点 1. 流量染色&#xff1a;通过Header注入X-Test-TraceId标识压测流量 2. 影子库表&#xff1a;通过ShardingSphere实现数据隔离 3. 熔断降级&#xff1a;压测流量触发异常时自动切换回生产数据源 数据隔离方案对比 …

Python常用的第三方模块之数据分析【pdfplumber库、Numpy库、Pandas库、Matplotlib库】

【pdfplumber库】从PDF文件中读取内容 import pdfplumber #打开PDF文件 with pdfplumber.open(DeepSeek从入门到精通(20250204).pdf) as pdf:for i in pdf.pages: #遍历页print(i.extract_text()) #extract_text()方法提取内容print(f----------------第{i.page_number}页结束…

长短板理论——AI与思维模型【83】

一、定义 长短板理论思维模型&#xff0c;也被称为木桶原理&#xff0c;是指一只木桶能盛多少水&#xff0c;并不取决于最长的那块木板&#xff0c;而是取决于最短的那块木板。该理论将木桶视为一个整体系统&#xff0c;各个木板代表着系统的不同组成部分或要素&#xff0c;强…

2025蓝桥省赛c++B组第二场题解

前言 这场的题目非常的简单啊&#xff0c;至于为什么有第二场&#xff0c;因为当时河北正在刮大风被迫停止了QwQ&#xff0c;个人感觉是历年来最简单的一场&#xff0c;如果有什么不足之处&#xff0c;还望补充。 试题 A: 密密摆放 【问题描述】 小蓝有一个大箱子&#xff0…

【数据结构与算法】从完全二叉树到堆再到优先队列

完全二叉树 CBT 设二叉树的深度为 h , 若非最底层的其他各层的节点数都达到最大个数 , 最底层 h 的所有节点都连续集中在左侧的二叉树叫做 完全二叉树 . 特点 对任意节点 , 其右分支下的叶子节点的最底层为 L , 则其左分支下的叶子节点的最低层一定是 L 或 L 1 .完全二叉树…

Leetcode:1. 两数之和

题目 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案&#xff0c;并且你不能使用两次相同的元素。 你可以按任意顺序返回答案。 示…

flume整合kafka

需求一&#xff1a; 启动flume 启动kafka消费者&#xff0c;验证数据写入成功 新增测试数据 需求二&#xff1a; 启动Kafka生产者 启动Flume 在生产者中写入数据

Hbase集群管理与实践

一、HBase集群搭建实战 1.1 环境规划建议 硬件配置基准(以10节点集群为例): 角色CPU内存磁盘网络HMaster4核16GBSSD 200GB(系统盘)10GbpsRegionServer16核64GB124TB HDD(JBOD)25GbpsZooKeeper4核8GBSSD 500GB10Gbps1.2 关键配置项示例(hbase-site.xml) <configu…

STM32 开发 - stm32f10x.h 头文件(内存映射、寄存器结构体与宏、寄存器位定义、实现点灯案例)

概述 STM32F10x.h 是 STM32F1 系列微控制器的核心头文件&#xff0c;提供了所有外设寄存器的定义和内存映射 一、内存映射 #define PERIPH_BASE ((uint32_t)0x40000000)#define APB1PERIPH_BASE PERIPH_BASE #define APB2PERIPH_BASE (PERIPH_BASE 0x…