mysql-面试50题-4

一、查询数据

ymysql-面试50题-2-CSDN博客

二、问题

31.查询课程编号为 01 且课程成绩在 80 分以上的学生的学号和姓名

mysql> select student.sid,student.sname

-> from student,sc

-> where cid="01"

-> and score>=80

-> and student.sid = sc.sid;

+------+--------+

| sid | sname |

+------+--------+

| 01 | 赵雷 |

| 03 | 孙风 |

+------+--------+

2 rows in set (0.00 sec)

32.求每门课程的学生人数

mysql> select sc.CId,count(*) as 学生人数

-> from sc

-> GROUP BY sc.CId;

+------+--------------+

| CId | 学生人数 |

+------+--------------+

| 01 | 6 |

| 02 | 6 |

| 03 | 6 |

+------+--------------+

3 rows in set (0.00 sec)

33.成绩不重复,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩

mysql> select student.*, sc.score, sc.cid from student, teacher, course,sc

-> where teacher.tid = course.tid

-> and sc.sid = student.sid

-> and sc.cid = course.cid

-> and teacher.tname = "张三"

-> order by score desc

-> limit 1;

+------+--------+---------------------+------+-------+------+

| SId | Sname | Sage | Ssex | score | cid |

+------+--------+---------------------+------+-------+------+

| 01 | 赵雷 | 1990-01-01 00:00:00 | 男 | 90.0 | 02 |

+------+--------+---------------------+------+-------+------+

1 row in set (0.01 sec)

34.成绩有重复的情况下,查询选修「张三」老师所授课程的学生中,成绩最高的学生信息及其成绩

mysql> select student.*, sc.score, sc.cid from student, teacher, course,sc

-> where teacher.tid = course.tid

-> and sc.sid = student.sid

-> and sc.cid = course.cid

-> and teacher.tname = "张三"

-> and sc.score = (

-> select Max(sc.score)

-> from sc,student, teacher, course

-> where teacher.tid = course.tid

-> and sc.sid = student.sid

-> and sc.cid = course.cid

-> and teacher.tname = "张三"

-> );

+------+--------+---------------------+------+-------+------+

| SId | Sname | Sage | Ssex | score | cid |

+------+--------+---------------------+------+-------+------+

| 01 | 赵雷 | 1990-01-01 00:00:00 | 男 | 90.0 | 02 |

+------+--------+---------------------+------+-------+------+

1 row in set (0.00 sec)

35.查询不同课程成绩相同的学生的学生编号、课程编号、学生成绩

36.查询每门功成绩最好的前两名

37.统计每门课程的学生选修人数(超过 5 人的课程才统计)。

mysql> select sc.cid, count(sid) as cc from sc

-> group by cid

-> having cc >5;

+------+----+

| cid | cc |

+------+----+

| 01 | 6 |

| 02 | 6 |

| 03 | 6 |

+------+----+

3 rows in set (0.00 sec)

38.检索至少选修两门课程的学生学号

mysql> select sid, count(cid) as cc from sc

-> group by sid

-> having cc>=2;

+------+----+

| sid | cc |

+------+----+

| 01 | 3 |

| 02 | 3 |

| 03 | 3 |

| 04 | 3 |

| 05 | 2 |

| 06 | 2 |

| 07 | 2 |

+------+----+

7 rows in set (0.00 sec)

39.查询选修了全部课程的学生信息

40.查询各学生的年龄,只按年份来算

注:对于上面的一些题,后面补

相关推荐
Raink老师5 小时前
【AI面试临阵磨枪-79】实时数据 RAG:订单、商家、物流、天气、动态库存
人工智能·面试·职场和发展
Cosolar5 小时前
Chroma向量库面试学习指南
数据库·人工智能·面试·职场和发展·数据库架构
小江的记录本6 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:CMS:核心原理、回收流程、优缺点、废弃原因(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·面试·maven
小江的记录本9 小时前
【JVM虚拟机】垃圾回收GC:垃圾回收算法:标记-清除、标记-复制、标记-整理、分代收集(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·算法·安全·面试
小江的记录本9 小时前
【JVM虚拟机】垃圾回收GC:垃圾收集器:G1:Region分区、Mixed GC、回收流程、适用场景(高频)(附《思维导图》+《面试高频考点清单》)
java·jvm·后端·python·spring·spring cloud·面试
秦明月1310 小时前
电芯装配测试线安全回路设计实战
经验分享·其他·职场和发展·创业创新·学习方法
Mahir0812 小时前
MyBatis 深度解密:从执行流程到底层原理全解
java·后端·面试·mybatis
程序员小远12 小时前
系统性能指标全解析
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·性能测试
罗超驿12 小时前
9.LeetCode 209. 长度最小的子数组 | 滑动窗口专题详解
java·算法·leetcode·面试
折哥的程序人生 · 物流技术专研13 小时前
《Java 100 天进阶之路》第35篇:Java异常处理最佳实践
java·开发语言·后端·面试·求职招聘