数据库实验:SQL查询操作实践

需积分: 9 3 下载量 90 浏览量 更新于2024-10-29 收藏 102KB DOC 举报
"数据库实验一表的创建" 本次实验主要关注于数据库中表的创建以及基本操作,重点在于掌握如何进行简单的查询和连接查询。实验是针对"数据库原理与开发"这门课程的设计型实验,属于专业基础类别,时长为4学时。实验目的是使学生熟悉并能执行数据库中的数据查询操作。 实验内容涵盖了一系列具体任务,涉及一个学生选课数据库,其中包括三个表:S(记录学生信息),SC(记录学生选课和成绩),C(记录课程信息)。下面是每个任务的查询语句及其对应的实验结果: 1) 查询李老师所教授的课程号和课程名称: 使用的查询语句是 `SELECT Cno, Cname FROM Course WHERE Teacher = '李老师'`,结果显示了李老师所教课程的编号和名称。 2) 查找年龄大于23岁的女性学生的学号和姓名: 通过 `SELECT Sno, Sname FROM S WHERE Age > 23` 查询,得到了符合条件的学生信息。 3) 找出“李小波”选修的所有课程名称: 使用 `SELECT Cname FROM S, SC, Course WHERE S.sna = '李小波' AND S.sno = SC.sno AND SC.cno = Course.cno` ,展示出李小波选修的课程。 4) 列出所有成绩在80分以上的学生姓名及其所在系: 查询语句 `SELECT Sname, Department FROM S, SC WHERE SC.score >= 80 AND SC.sno = S.sno` 显示了这些学生的姓名和所在系。 5) 检索未选修“操作系统”课程的学生姓名: 使用 `SELECT Sname FROM Course, SC, S WHERE Course.cname NOT IN ('操作系统') AND Course.cno = SC.cno AND SC.sno = S.sno` 来找出这些学生。 6) 找出与“李小波”同乡的男性学生姓名及其所在系: 需要结合地址信息进行查询,但具体查询语句在提供的内容中未给出。 7) 查询至少选修两门以上课程的学生姓名、性别: 这需要计算每个学生选修的课程数量,然后筛选出大于等于2的情况,具体查询语句未提供。 8) 统计选修李老师所讲课程的学生人数: 可以先找出李老师教授的课程,再通过关联查询找出选修这些课程的学生,最后用COUNT函数统计人数。 9) 找出“操作系统”课程得分最高的学生姓名、性别、所在系: 使用 `SELECT Sname, Sex, Department FROM S, SC WHERE SC.score = (SELECT MAX(score) FROM SC WHERE Cno = (SELECT Cno FROM Course WHERE Cname = '操作系统'))` 可以找到该学生的信息。 10) 列出选修李老师课程的所有学生: 通过 `SELECT Sname FROM S, SC WHERE SC.cno IN (SELECT Cno FROM Course WHERE Teacher = '李老师') AND SC.sno = S.sno` 可以获取这些学生名单。 实验使用了多媒体计算机,并安装了SQL-SERVER2000作为数据库管理系统。实验步骤中包含了对三个表(SC, Course, S)的查询操作,每个查询都有相应的SQL语句和预期的结果展示。这个实验有助于提升学生在数据库查询和操作方面的技能,为后续更复杂的数据库操作打下基础。