数据库School设计及SQL查询示例

本文将介绍数据库School的设计,以及一些常用的SQL查询示例。

数据库表结构

数据库School包含三个表:

  1. 学生表Student

    • 学号 (Sno) char(3)
    • 姓名 (Sname) char(4)
    • 性别 (Ssex) char(2)
    • 年龄 (Sage) int
    • 系别 (Sdept) char(6)
  2. 课程表Course

    • 课程号 (Cno) char(3)
    • 课程名 (Cname) char(8)
    • 任课教师 (teacher) char(4)
  3. 选修表SC

    • 学号 (Sno) char(3)
    • 课程号 (Cno) char(3)
    • 分数 (Grade) int

SQL查询示例

以下是一些常用的SQL查询示例:

  1. 查询男生的选课记录
SELECT Student.Sno, Student.Sname, Course.Cname, SC.Grade
FROM Student, Course, SC
WHERE Student.Sno = SC.Sno AND Course.Cno = SC.Cno AND Student.Ssex = '男';
  1. 查询选修了操作系统的学生姓名及系名
SELECT Student.Sname, Student.Sdept
FROM Student, Course, SC
WHERE Student.Sno = SC.Sno AND Course.Cno = SC.Cno AND Course.Cname = '操作系统';
  1. 查询张三同学选修的所有课程的名称及其成绩
SELECT Course.Cname, SC.Grade
FROM Student, Course, SC
WHERE Student.Sno = SC.Sno AND Course.Cno = SC.Cno AND Student.Sname = '张三';
  1. 查询计算机和数学专业学生所选修的课程详细信息,即课程号,课程名和任课教师
SELECT Course.Cno, Course.Cname, Course.teacher
FROM Student, Course, SC
WHERE Student.Sno = SC.Sno AND Course.Cno = SC.Cno AND (Student.Sdept = '计算机' OR Student.Sdept = '数学');
  1. 查询女生所选修课程的平均成绩
SELECT Course.Cname, AVG(SC.Grade)
FROM Student, Course, SC
WHERE Student.Sno = SC.Sno AND Course.Cno = SC.Cno AND Student.Ssex = '女'
GROUP BY Course.Cname;

以上示例展示了数据库School中常用的SQL查询,您可以根据需要进行修改和扩展。

数据库School设计及SQL查询示例 - 学生、课程和选修关系

原文地址: https://www.cveoy.top/t/topic/odY0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录