mysql联表语句练习

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: .整体表字段如下图所示

1.整体表字段如下图所示:2bf9548b9493471aba69e281bcc80ddd.png


2.每个表的详情:


class班级表:

6918cb1c897641c999e87188edbdb611.png


course课程表:


b08af7298b424a70a4cc6bed7a15be96.png


score成绩表:


2ee1039a897e4c6887d38b1c9730a98a.png

student学生表:

3566fc302e944003ab001cd3117e2862.png


teacher教师表:

cdd1d515c7f14cc6af1fb602371ef750.png


3.相关题目以及答案


-- 1.查询所有的课程的名称以及对应的任课老师姓名?

-- SELECT co.name course_name,te.name teacher_name FROM course co LEFT JOIN teacher te ON co.teacher_id = te.id;

-- 2.查询平均成绩大于65分的同学的id、姓名和平均成绩

-- SELECT st.id,st.name,avg(sc.mark) svg FROM student st LEFT JOIN score sc ON st.id = sc.student_id GROUP BY st.id HAVING svg>65;

-- 3.查询所有同学的姓名,选课数,总成绩

-- SELECT st.name,count(sc.course_id) course_count,sum(sc.mark) FROM student st LEFT JOIN score sc ON st.id = sc.student_id GROUP BY st.id;

-- 4.查询挂科超过两门(包括两门)的学生姓名

-- SELECT st.name FROM student st LEFT JOIN score sc ON st.id = sc.student_id WHERE sc.mark<60 GROUP BY st.id HAVING count(sc.mark)>=2;

-- 5.查询每门课程名字及其被选修次数

-- SELECT co.name,count(sc.course_id) count_course FROM score sc INNER JOIN course co ON sc.course_id = co.id GROUP BY sc.course_id;

-- 6.查询表中男生、女生各有多少人?

--  SELECT gender,count(st.gender) gender_count FROM student st GROUP BY st.gender;

-- 7.查询每门课程的平均成绩,结果按平均成绩升序排列

-- SELECT co.name,avg(sc.mark) svg FROM score sc LEFT JOIN course co ON sc.course_id = co.id GROUP BY sc.course_id ORDER BY svg;

-- 8.查询高三二班的学生

-- SELECT c.name class_name,st.name student_name FROM student st INNER JOIN class c ON st.class_id = c.id AND c.name = '高三2班';


4.写在最后


mysql的学习需要多加练习,以上答案不唯一,可能有错误或不足之处,还在学习中,请见谅。

 

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库子查询练习——EXISTS(存在)
MySQL数据库子查询练习——EXISTS(存在)
66 1
|
6月前
|
关系型数据库 MySQL 数据挖掘
MySQL窗口函数详解(概念+练习+实战)
MySQL窗口函数详解(概念+练习+实战)
1139 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列15、电子邮件管理系统
MySQL数据库基础练习系列15、电子邮件管理系统
48 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列14、博客后台管理系统
MySQL数据库基础练习系列14、博客后台管理系统
46 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列13、用户注册与登录系统
MySQL数据库基础练习系列13、用户注册与登录系统
45 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列12、论坛管理系统
MySQL数据库基础练习系列12、论坛管理系统
47 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列11、新闻发布系统
MySQL数据库基础练习系列11、新闻发布系统
41 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列10、访客登记系统
MySQL数据库基础练习系列10、访客登记系统
55 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列9、在线投票系统
MySQL数据库基础练习系列9、在线投票系统
38 1
|
6月前
|
SQL 关系型数据库 MySQL
MySQL数据库基础练习系列8、成绩录入与分析系统
MySQL数据库基础练习系列8、成绩录入与分析系统
38 1