学生管理系统数据库:关系表如下
系部(系部编号,系部名称)
年级 (年级编号,年级名称)
专业(专业编号,专业名称,系部编号,年级编号)
班级(班级编号,班级名称,辅导员,专业编号)
学生(学号,姓名,性别,家族地址,联系电话,班级编号,社团编号)
社团(社团编号,社团名称,社团简介,社团人数)
成绩(id.分数,学期,学号,课程编司
课程(课程编号,课程名称,课程学分)
查询某同学的学生信息。
查询某辅导员所带班级学生的成绩名单。
查询参加某社团的学生名单。
画出学生管理系统数据库的E-R图。
其中编号为了方便使用id作为编号,实际运用中编号应该用特定的格式,以上语句中id设置为了主键,保证了编号的唯一性。
第一条查询,查询某个学生的信息;该语句中使用了学号来查询学生的信息,也可改为其他条件。
select s.student_id as 学号,
s.student_name as 姓名,
s.sex as 性别,
s.house_address as 家庭地址,
s.phone as 联系电话,
c.class_name as 班级名称,
m.major_name as 专业名称,
g.grade_name as 年级名称,
d.department_name as 系部名称
from student s left join class c on s.class_id=c.class_id
left join major m on c.major_id = m.major_id left join grade g on m.grade_id=g.grade_id
left join department d on m.department_id=d.department_id
where s.student_id=1
第二条:查询某个辅导员班级的学生成绩
select c.class_name as 班级名称,
s.student_id as 学号,
s.student_name as 姓名,
cr.course_name as 课程名称,
p.performance as 成绩
from class c left join student s on s.class_id=c.class_id
left join performance p on s.student_id=p.student_id
left join course cr on p.course_id =cr.course_id
where instructor ='王子亮’
第三条:查询某个协会的学生,根据协会的名称查询
select mo.mass_organization_name as 协会名称,
s.student_name as 姓名,
s.sex as 性别,
s.house_address as 家庭地址,
s.phone as 联系电话,
c.class_name as 班级名称,
m.major_name as 专业名称,
g.grade_name as 年级名称,
d.department_name as 系部名称
from mass_organization mo left join student s on mo.mass_organization_id=s.mass_organization_id
left join class c on s.class_id=c.class_id
left join major m on c.major_id = m.major_id left join grade g on m.grade_id=g.grade_id
left join department d on m.department_id=d.department_id
where mass_organization_name='音乐协会’
由于没有画图工具,E-R图暂不画出。
结果一
结果二
结果三