项目三 任务四 MySQL函数(一)(课件)-《数据库原理与应用技术》(河北科学技术出版社)同步精品课堂

2024-08-09
| 27页
| 449人阅读
| 3人下载
精品

内容正文:

项目三 任务四 MySQL函数(一) 数据库原理与应用技术-MySQL 同步精品课堂 河北科学技术出版社 掌握国家标准《机械制图》中有关图幅、比例、字体图线等基本规定。 教学目标 一 知识目标 认识聚合函数的格式、功能,灵活使用函数解决问题。 教学重难点 二 教学重点 认识聚合函数的格式、功能 教学难点 灵活使用函数解决问题 导入新课 三 想一想? 场景: 学校图书馆需要统计不同书籍类型的借阅量,并计算每种类型的平均借阅天数。 需求: 查询每种书籍类型的借阅量。 计算每种类型的平均借阅天数。 MySQL中的函数就可以快速完成需求 新知讲授 四 聚合函数 聚合函数在SELECT查询中用来对数据集进行汇总计算,通常配合GROUP BY对分组数据求值,若无GROUP BY则对整个数据集进行全局汇总。 新知讲授 四 常见的聚合函数有COUNT(*) 或 COUNT(column_name)、SUM(column_name)、AVG(column_name)、MAX(column_name) 、MIN(column_name) 、STDDEV(column_name)、VAR_POP(column_name) 、VAR_SAMP(column_name) 、STDDEV_POP(column_name) 、STDDEV_SAMP(column_name)等。 聚合函数 基于数据表 Stu_id Name Chinese Maths English 20030101 张三 98 89 96 20030102 李四 88 90 95 20030103 王五 93 70 89 20030104 陈六 98 98 70 20030105 郭七 90 92 94 新知讲授 四 聚合函数 COUNT(*): 作用:计算表中行的总数,无论列中的值是否为NULL。 用法:SELECT COUNT(*) FROM table_name; 示例:如果表中有10行数据,COUNT(*)将返回10。 新知讲授 四 聚合函数 COUNT(column_name): 作用:计算指定列中非NULL值的数量。 用法:SELECT COUNT(column_name) FROM table_name; 示例:如果某列有8个非NULL值,COUNT(column_name)将返回8。 新知讲授 四 聚合函数 SUM(column_name): 作用:计算指定列的数值总和。 用法:SELECT SUM(column_name) FROM table_name; 示例:如果某列的值为1, 2, 3, 4, 5,SUM(column_name)将返回15。 新知讲授 四 聚合函数 AVG(column_name): 作用:计算指定列的平均值(算术平均值)。 用法:SELECT AVG(column_name) FROM table_name; 示例:如果某列的值为1, 2, 3, 4, 5,AVG(column_name)将返回3。 新知讲授 四 聚合函数 MAX(column_name): 作用:找出指定列中的最大值。 用法:SELECT MAX(column_name) FROM table_name; 示例:如果某列的值为1, 3, 5, 7, 9,MAX(column_name)将返回9。 新知讲授 四 聚合函数 MIN(column_name): 作用:找出指定列中的最小值。 用法:SELECT MIN(column_name) FROM table_name; 示例:如果某列的值为1, 3, 5, 7, 9,MIN(column_name)将返回1。 新知讲授 四 聚合函数 STDDEV(column_name) 作用:计算指定列数值的标准偏差。 返回值:返回一个双精度浮点数,表示标准偏差。 实例:SELECT STDDEV(column_name) FROM table_name; 新知讲授 四 聚合函数 VAR_POP(column_name): 作用:返回指定列值的总体方差,这是数据分布离散程度的一个度量。方差是标准偏差的平方。 用法:SELECT VAR_POP(column_name) FROM table_name; 新知讲授 四 聚合函数 VAR_SAMP(column_name): 作用:返回指定列值的样本方差,这是基于样本数据估计的总体方差。 用法:SELECT VAR_SAMP(column_name) FROM table_name; 新知讲授 四 聚合函数 STDDEV_POP(column_name): 作用:与 STDDEV(column_name) 相同,返回指定列值的总体标准偏差。 用法:SELECT STDDEV_POP(column_name) FROM table_name; 新知讲授 四 聚合函数 STDDEV_SAMP(column_name): 作用:返回指定列值的样本标准偏差,这是基于样本数据估计的总体标准偏差。 用法:SELECT STDDEV_SAMP(column_name) FROM table_name; 师生互动 五 1 动手操作 练习课堂案例 2 想一想 聚合函数能够帮我们解决现实中的哪些问题? 随堂练习 六 1 假设有一个表 sales,其中包含列 amount。以下( )SQL查询可以计算 amount 列的总和。 A. SELECT SUM(amount) FROM sales; B. SELECT SUM(*) FROM sales; C. SELECT COUNT(amount) FROM sales; D. SELECT AVG(amount) FROM sales; 答案:A SUM(column_name) 函数用于计算指定列的总和。因此,正确的查询是 SELECT SUM(amount) FROM sales;。选项B的 SUM(*) 是错误的用法,因为 SUM 需要具体的列名。选项C的 COUNT(amount) 用于计数而非求和。选项D的 AVG(amount) 用于计算平均值。 随堂练习 六 2假设 students 表中有 score 列,表示学生的分数。以下( )SQL查询可以计算所有学生分数的平均值。 A. SELECT AVG(score) FROM students; B. SELECT SUM(score) FROM students; C. SELECT COUNT(score) FROM students; D. SELECT MAX(score) FROM students; 答案: A 解析:AVG(column_name) 函数用于计算指定列的平均值。因此,正确的查询是 SELECT AVG(score) FROM students;。选项B的 SUM(score) 用于计算总和,选项C的 COUNT(score) 用于计数,选项D的 MAX(score) 用于找出最大值。 随堂练习 六 3如果 products 表中的 price 列表示产品的价格,以下( )SQL查询可以找出价格最高的产品。 A. SELECT MAX(price) FROM products; B. SELECT MIN(price) FROM products; C. SELECT AVG(price) FROM products; D. SELECT COUNT(price) FROM products; 答案:A 解析:MAX(column_name) 函数用于找出指定列中的最大值。因此,正确的查询是 SELECT MAX(price) FROM products;。选项B的 MIN(price) 用于找出最小值,选项C的 AVG(price) 用于计算平均值,选项D的 COUNT(price) 用于计数。 随堂练习 六 4聚合函数 COUNT(*) 和 COUNT(column_name) 在计算结果时都会忽略 NULL 值。( ) 答案: 错误 解析:COUNT(*) 会计算表中的所有行,包括那些含有 NULL 值的行。而 COUNT(column_name) 只会计算指定列中非 NULL 值的数量。因此,这两个函数在处理 NULL 值时的行为是不同的。 随堂练习 六 5 SUM 函数只能用于数值类型的列。( ) 答案:正确 解析:SUM 函数确实只能用于数值类型的列,用于计算这些列值的总和。如果尝试在非数值列上使用 SUM 函数,会导致错误。 随堂练习 六 6 使用 AVG 函数时,如果列中有 NULL 值,则这些 NULL 值会被计算在内。( ) 答案:错误 解析:在使用 AVG 函数计算平均值时,NULL 值会被忽略,不会影响计算结果。AVG 函数只计算非 NULL 值的平均值。 随堂练习 六 7 MAX 和 MIN 函数不仅可以用于数值类型的列,也可以用于日期和时间类型的列。( ) 答案:正确 解析:MAX 和 MIN 函数不仅可以用于数值类型的列来找出最大值和最小值,也可以用于日期和时间类型的列,以找出最早的日期/时间或最晚的日期/时间。 课堂小结 七 谢谢 /* Navicat Premium Dump SQL Source Server : MySQL Source Server Type : MySQL Source Server Version : 50736 (5.7.36-log) Source Host : localhost:3306 Source Schema : test1 Target Server Type : MySQL Target Server Version : 50736 (5.7.36-log) File Encoding : 65001 Date: 06/08/2024 21:18:06 */ SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS = 0; -- ---------------------------- -- Table structure for student_score -- ---------------------------- DROP TABLE IF EXISTS `student_score`; CREATE TABLE `student_score` ( `stu_id` int(11) NOT NULL, `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL DEFAULT NULL, `chinese` int(11) NULL DEFAULT NULL, `maths` int(11) NULL DEFAULT NULL, `english` int(11) NULL DEFAULT NULL, PRIMARY KEY (`stu_id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of student_score -- ---------------------------- INSERT INTO `student_score` VALUES (20030101, '张三', 98, 89, 96); INSERT INTO `student_score` VALUES (20030102, '李四', 88, 89, 96); INSERT INTO `student_score` VALUES (20030103, '王五', 93, 70, 89); INSERT INTO `student_score` VALUES (20030104, '陈六', 98, 98, 70); INSERT INTO `student_score` VALUES (20030105, '郭七', 90, 92, 94); SET FOREIGN_KEY_CHECKS = 1; $$

资源预览图

项目三 任务四 MySQL函数(一)(课件)-《数据库原理与应用技术》(河北科学技术出版社)同步精品课堂
1
项目三 任务四 MySQL函数(一)(课件)-《数据库原理与应用技术》(河北科学技术出版社)同步精品课堂
2
项目三 任务四 MySQL函数(一)(课件)-《数据库原理与应用技术》(河北科学技术出版社)同步精品课堂
3
项目三 任务四 MySQL函数(一)(课件)-《数据库原理与应用技术》(河北科学技术出版社)同步精品课堂
4
项目三 任务四 MySQL函数(一)(课件)-《数据库原理与应用技术》(河北科学技术出版社)同步精品课堂
5
项目三 任务四 MySQL函数(一)(课件)-《数据库原理与应用技术》(河北科学技术出版社)同步精品课堂
6
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。