Mysql学习教程

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: mysql初学者练习题

1、在本地mysql数据库执行一下语句

CREATE DATABASE wenqixiaojiejie;
USE wenqixiaojiejie;
CREATE TABLE student
(
 id INT(11) NOT NULL AUTO_INCREMENT COMMENT '学生学号', 
 name  VARCHAR(20) NOT NULL COMMENT '学生姓名',
 student_sex  TINYINT(1) NOT NULL DEFAULT 0 COMMENT "性别 1:男 0:女,默认1", 
 student_birthay DATETIME NOT null comment '出生日期',
 class_no INT(11) NOT NULL COMMENT "所属班级",
 PRIMARY KEY (`id`),
 UNIQUE KEY idx_id_class_no(`id`,`class_no`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='学生表';

CREATE TABLE course
(
 id INT(11) NOT NULL AUTO_INCREMENT COMMENT '课程id' , 
 course_name VARCHAR(20) NOT NULL COMMENT '课程名称', 
 course_teacher_id  INT(11) NOT NULL COMMENT '授课老师id',
 PRIMARY KEY (`id`),
 UNIQUE KEY idx_id_course_teacher_id(`id`,`course_teacher_id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='课程表' ; 
 
 CREATE TABLE score 
(
 id INT(11) NOT NULL AUTO_INCREMENT COMMENT '自增id' , 
 student_id INT(11) NOT NULL COMMENT '学生学号', 
 course_id INT(11) NOT NULL COMMENT '课程id', 
 degree INT(3) NOT NULL DEFAULT 0 COMMENT '成绩',
 PRIMARY KEY (`id`),
 UNIQUE KEY idx_student_id_course_id(`student_id`,`course_id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='成绩表' ;
 
 CREATE TABLE teacher 
(
 id INT(11) NOT NULL AUTO_INCREMENT COMMENT '教师id' , 
 teacher_name VARCHAR(20) NOT NULL COMMENT '教师姓名', 
 teacher_sex  TINYINT(1) NOT NULL DEFAULT 0 COMMENT "性别 1:男 0:女,默认1",
 teacher_birthay DATETIME NOT null comment '出生日期',
 teacher_prof   VARCHAR(20) NOT NULL COMMENT '职称', 
 teacher_depart    VARCHAR(20) NOT NULL  COMMENT '所属系',
  PRIMARY KEY (`id`)
 )ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='教师信息表' ;
 
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (1 ,'曾华' ,1 ,'1997-09-01',13);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (2 ,'匡明' ,1 ,'1995-10-02',11);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (3 ,'王丽' ,0 ,'1996-01-23',13);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (4 ,'李军' ,1 ,'1996-02-20',13);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (5 ,'王芳' ,0 ,'1995-02-10',11);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (6 ,'陆君' ,1 ,'1994-06-03',11);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (7 ,'张俊' ,0 ,'1997-09-01',13);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (8 ,'王海' ,1 ,'1995-10-02',11);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (9 ,'李思' ,0 ,'1996-01-23',13);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (10 ,'宋坤' ,1 ,'1996-02-20',13);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (11 ,'郑贺' ,1 ,'1995-02-10',11);
 INSERT INTO student (id,name,student_sex,student_birthay,class_no) VALUES (12 ,'刘峰' ,1 ,'1994-06-03',11);
 
 INSERT INTO teacher(id,teacher_name,teacher_sex,teacher_birthay,teacher_prof,teacher_depart) 
 VALUES (1,'李诚',1,'1968-12-02','副教授','计算机系');
 INSERT INTO teacher(id,teacher_name,teacher_sex,teacher_birthay,teacher_prof,teacher_depart)  
 VALUES (2,'张旭',1,'1969-03-12','讲师','电子工程系');
 INSERT INTO teacher(id,teacher_name,teacher_sex,teacher_birthay,teacher_prof,teacher_depart) 
 VALUES (3,'王萍',0,'1972-05-05','助教','计算机系');
 INSERT INTO teacher(id,teacher_name,teacher_sex,teacher_birthay,teacher_prof,teacher_depart)  
 VALUES (4,'刘冰',0,'1977-08-14','助教','电子工程系');
 
 INSERT INTO course(id,course_name,course_teacher_id) VALUES (1 ,'计算机导论',1);
 INSERT INTO course(id,course_name,course_teacher_id) VALUES (2 ,'操作系统' ,2);
 INSERT INTO course(id,course_name,course_teacher_id) VALUES (3 ,'数据电路' ,3);
 INSERT INTO course(id,course_name,course_teacher_id) VALUES (4 ,'高等数学' ,4);
 
 INSERT INTO score(student_id,course_id,degree) VALUES (1,1,86);
 INSERT INTO score(student_id,course_id,degree) VALUES (2,1,75);
 INSERT INTO score(student_id,course_id,degree) VALUES (3,1,68);
 INSERT INTO score(student_id,course_id,degree) VALUES (4,1,92);
 INSERT INTO score(student_id,course_id,degree) VALUES (5,1,88);
 INSERT INTO score(student_id,course_id,degree) VALUES (6,1,76);
 INSERT INTO score(student_id,course_id,degree) VALUES (7,1,64);
 INSERT INTO score(student_id,course_id,degree) VALUES (8,1,91);
 INSERT INTO score(student_id,course_id,degree) VALUES (12,1,81);
 INSERT INTO score(student_id,course_id,degree) VALUES (2,2,55);
 INSERT INTO score(student_id,course_id,degree) VALUES (3,2,98);
 INSERT INTO score(student_id,course_id,degree) VALUES (4,2,72);
 INSERT INTO score(student_id,course_id,degree) VALUES (5,2,48);
 INSERT INTO score(student_id,course_id,degree) VALUES (6,2,36);
 INSERT INTO score(student_id,course_id,degree) VALUES (7,2,14);
 INSERT INTO score(student_id,course_id,degree) VALUES (8,2,81);
 INSERT INTO score(student_id,course_id,degree) VALUES (9,2,72);
 INSERT INTO score(student_id,course_id,degree) VALUES (10,2,83);
 INSERT INTO score(student_id,course_id,degree) VALUES (11,2,74);
 INSERT INTO score(student_id,course_id,degree) VALUES (12,2,88);
 INSERT INTO score(student_id,course_id,degree) VALUES (2,3,76);
 INSERT INTO score(student_id,course_id,degree) VALUES (3,3,75);
 INSERT INTO score(student_id,course_id,degree) VALUES (4,3,75);
 INSERT INTO score(student_id,course_id,degree) VALUES (5,3,95);
 INSERT INTO score(student_id,course_id,degree) VALUES (6,3,52);
 INSERT INTO score(student_id,course_id,degree) VALUES (7,3,41);
 INSERT INTO score(student_id,course_id,degree) VALUES (8,3,65);
 INSERT INTO score(student_id,course_id,degree) VALUES (9,3,90);
 INSERT INTO score(student_id,course_id,degree) VALUES (10,3,86);
 INSERT INTO score(student_id,course_id,degree) VALUES (11,3,60);
 INSERT INTO score(student_id,course_id,degree) VALUES (12,3,85);
   INSERT INTO score(student_id,course_id,degree) VALUES (1,4,81);
 INSERT INTO score(student_id,course_id,degree) VALUES (2,4,99);
 INSERT INTO score(student_id,course_id,degree) VALUES (3,4,31);
 INSERT INTO score(student_id,course_id,degree) VALUES (4,4,92);
 INSERT INTO score(student_id,course_id,degree) VALUES (6,4,56);
 INSERT INTO score(student_id,course_id,degree) VALUES (7,4,60);
 INSERT INTO score(student_id,course_id,degree) VALUES (9,4,67);
 INSERT INTO score(student_id,course_id,degree) VALUES (10,4,77);
 INSERT INTO score(student_id,course_id,degree) VALUES (11,4,72);
 INSERT INTO score(student_id,course_id,degree) VALUES (12,4,86);

2、练习题

 1、 查询student表中的所有记录的学生姓名、性别和班级号列数据 

 2、 查询有多个教师在同一个系的系名称

 3、 查询student表的所有记录。
 
 4、 查询score表中成绩在60到80之间的所有记录。
 
 5、 查询score表中成绩为85,86或88的记录。
 
 6、 查询student表中11 班或性别为“女”的同学记录。
 
 7、 以class_no降序查询Student表的所有记录。
 
 8、 以course_id升序、degree降序查询score表的所有记录。
 
 9、 查询11班的学生人数。
 
 10、查询score表中的最高分的学生学号和课程号。
 
 11、查询2号课程的平均分。
 
 12、查询score表中最多学生选修的课程的平均分数。
 
 13、查询最低分大于70,最高分小于90的学生数据。
 
 14、查询所有学生的student_id、course_id和degree列。
 
 15、查询所有学生的student_name、course_name和Degree列。
 
 17、查询11班所选每门课程的平均分。
 
 19、查询选修4的课程的成绩高于60号同学成绩的所有同学的记录。
                               
 20、查询score中选学一门以上课程的同学中分数为非最高分成绩的记录。
 
 21、查询成绩高于学号为8、课程号为3的成绩的所有记录。
 
 22、查询和学号为10的同学同年出生的所有学生的student_id、student_name和student_birthday列。
 
 23、查询“张旭“教师任课的学生成绩。
 
 24、查询选修某课程的同学人数多于5人的教师姓名。
 
 25、查询11班和13班全体学生的记录。
 
 26、查询存在有85分以上成绩的课程course_id.
 
 27、查询出“计算机系“教师所教课程的成绩表。
 
 28、查询“计算机系”与“电子工程系“不同职称的教师的teacher_name和teacher_prof。
 
 29、查询选修编号为3课程且成绩至少高于选修编号为3的同学的course_id、student_id和degree,并按degree从高到低次序排序。
 
 30、查询选修编号为3且成绩高于选修编号为3课程的同学的course_id、student_id和Degree.
 
 31、查询所有教师和同学的name、student_sex和student_birthday.
 
 32、查询所有“女”教师和“女”同学的name、student_sex和student_birthday.
 
 33、查询成绩比该课程平均成绩低的同学的成绩表。
 
 34、查询所有任课教师的teacher_name和teacher_depart.
 
 35  查询所有未讲课的教师的teacher_name和teacher_depart.
 
 36、查询至少有2名男生的班号。
 
 37、查询student表中不姓“王”的同学记录。
 
 38、查询student表中每个学生的姓名和年龄。
 
 39、查询student表中最大和最小的student_birthday日期值。
 
 40、以班号和年龄从大到小的顺序查询student表中的全部记录。
 
 41、查询“男”教师及其所上的课程。
 
 42、查询最高分同学的course_id、student_id和degree列。
 
 43、查询和“李军”同性别的所有同学的name.
 
 44、查询和“李军”同性别并同班的同学name.
 
 45、查询所有选修“计算机导论”课程的“男”同学的成绩表

 46、修改所有学生成绩加1分

 47、修改11班所有同学的班级号到13班

 48、修改所有张旭老师教的课程考试学生的成绩+10分

 49、成绩表插入等级字段,60分以下为c,80分以上为A,中间为B

 50、补充所有学生中有课程无成绩的成绩信息,默认为60分。
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
分布式计算 关系型数据库 MySQL
大数据-88 Spark 集群 案例学习 Spark Scala 案例 SuperWordCount 计算结果数据写入MySQL
大数据-88 Spark 集群 案例学习 Spark Scala 案例 SuperWordCount 计算结果数据写入MySQL
51 3
|
2月前
|
存储 SQL 关系型数据库
【入门级教程】MySQL:从零开始的数据库之旅
本教程面向零基础用户,采用通俗易懂的语言和丰富的示例,帮助你快速掌握MySQL的基础知识和操作技巧。内容涵盖SQL语言基础(SELECT、INSERT、UPDATE、DELETE等常用语句)、使用索引提高查询效率、存储过程等。适合学生、开发者及数据库爱好者。
46 0
【入门级教程】MySQL:从零开始的数据库之旅
|
2月前
|
tengine 关系型数据库 MySQL
Tengine、Nginx安装MySQL数据库命令教程
本指南详细介绍了在Linux系统上安装与配置MySQL数据库的步骤。首先通过下载并安装MySQL社区版本,接着启动MySQL服务,使用`systemctl start mysqld.service`命令。若启动失败,可尝试使用`sudo /etc/init.d/mysqld start`。利用`systemctl status mysqld.service`检查MySQL的服务状态,确保其处于运行中。通过日志文件获取初始密码,使用该密码登录数据库,并按要求更改初始密码以增强安全性。随后创建一个名为`tengine`的数据库,最后验证数据库创建是否成功以及完成整个设置流程。
|
2月前
|
关系型数据库 MySQL Java
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
这篇文章是关于如何使用Django框架配置MySQL数据库,创建模型实例,并自动或手动创建数据库表,以及对这些表进行操作的详细教程。
70 0
Django学习二:配置mysql,创建model实例,自动创建数据库表,对mysql数据库表已经创建好的进行直接操作和实验。
|
2月前
|
Java 关系型数据库 MySQL
springboot学习五:springboot整合Mybatis 连接 mysql数据库
这篇文章是关于如何使用Spring Boot整合MyBatis来连接MySQL数据库,并进行基本的增删改查操作的教程。
108 0
springboot学习五:springboot整合Mybatis 连接 mysql数据库
|
2月前
|
Java 关系型数据库 MySQL
springboot学习四:springboot链接mysql数据库,使用JdbcTemplate 操作mysql
这篇文章是关于如何使用Spring Boot框架通过JdbcTemplate操作MySQL数据库的教程。
34 0
springboot学习四:springboot链接mysql数据库,使用JdbcTemplate 操作mysql
|
2月前
|
关系型数据库 MySQL 数据库
mysql关系型数据库的学习
mysql关系型数据库的学习
20 0
|
2月前
|
Kubernetes 关系型数据库 MySQL
k8s学习--利用helm部署应用mysql,加深helm的理解
k8s学习--利用helm部署应用mysql,加深helm的理解
213 0
|
3月前
|
SQL 关系型数据库 MySQL
学习MySQL操作的有效方法
学习MySQL操作的有效方法
48 3
|
3月前
|
SQL 关系型数据库 MySQL
如何学习 MySQL?
如何学习 MySQL?
39 3