2021年SQL经典面试题:学生选修课程查询详解

版权申诉
0 下载量 89 浏览量 更新于2024-03-01 收藏 47KB DOCX 举报
2021年的SQL经典面试题包含了一系列有关学生和课程的建表语句和SQL查询语句。在这些题目中,涉及到了学生表S,课程表C,以及学生课程表SC的建表语句,以及通过SC表进行关联的相关查询语句。 首先,在建表语句的部分,题目要求建立学生表S和课程表C,以及学生课程表SC。其中,学生可以选修多门课程,一门课程可以被多个学生选修,通过SC表进行了关联。建表语句如下(mysql数据库): create table s(id integer primary key,name varchar(20)); create table c(id integer primary key,name varchar(20)); create table sc(sid integer references s(id), cid integer references c(id), primary key(sid,cid)); 其次,在SQL查询语句的部分,题目要求编写查询语句,查询选修了所有选修课程学生以及查询选修了至少5门以上课程的学生。查询语句如下: 1) 查询选修了所有选修课程的学生: select stu.id,stu.name from s stuwhere (select count(*) from sc where sid=stu.id) = (select count(*) from c); 2) 查询选修了至少5门以上课程的学生: select stu.id, stu.name from s stuwhere (select count(*) from sc where sid=stu.id) >= 5; 这些题目涵盖了SQL数据库中常见的建表和查询操作,考察了对数据库表的创建和对数据的查询的基本能力和理解。通过对这些题目的学习和思考,能够加深对SQL语言的理解和掌握,为今后在实际工作中的数据库操作提供了一定的帮助。同时,也可以帮助面试者在面试中更好地展现自己的SQL能力,从而获得更好的就业机会。综上所述,这些题目对于SQL学习者和准备面试的求职者都具有一定的参考和借鉴意义。