设在学生成绩管理数据库中有四个表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设在学生成绩管理数据库中有四个表相关的知识,希望对你有一定的参考价值。

学生表S(Snum,Sname,sex,birthday,dept)
课程表C(Cnum,Cname,Credit,Tnum)
选修表SC(Snum,Cnum,grade)
教师表T(Tnum,Tname,sex,birthday,dept,title,address)
用SQL语言查询以下问题
(1) 查询每个学生的姓名和年龄,并按年龄降序排列;
(2) 查询学生表中不姓‘王’的学生的情况;
(3) 查询选修了课程的学生姓名;
(4) 查询所有有成绩的学生的学号、姓名及课程名;
(5) 查询所有女教师及其所上的课程;
(6) 查询职称为教授的教师的人数;
(7) 查询各个课程号及其相应的选课人数;
(8) 查询与‘刘三’同一系的学生;
(9) 查询选修了‘数据库原理’的学生的姓名及成绩;
设有学生选修课程数据库,
学生表(学号,姓名,年龄,性别,所在系,地址,出生日期)
选课表(学号,课程号,成绩)
课程表(课程号,课程名称,教师姓名)
用SQL语言查询下列问题:
5)没有选修“操作系统”课的学生姓名。
6)英语成绩比数学成绩好的学生。
7)至少选修两门以上课程的学生姓名、性别。
8)选修了李老师所讲课程的学生人数。
9)没有选修李老师所讲课程的学生。
10)“操作系统”课程得最高分的学生姓名、性别、所在系。

<1>select sname,sex from S order by sex desc;
<2>select * from S where sname not like '王%';
<3>select sname from S where snum in(select snum from SC);
<4>应该是查询所有选课的同学吧
slecct s.snum,s.sname,c.cname from S s,C c where c.cnum in(select distinct cnum from SC);
<5>select t.tname,c.cname from C c,T t where t.sex='女' and t.tnum=c.tnum;
<6>select count(Tnum) from Tnum where title='教授';
<7>select c.cnum,count(s.snum) as sumnum from C c,S s where c.cnum=s.cnum group by c.cnum;
<8>select * from S where dept=(select dept from S where sname='刘三');
<9>select snum,sname from S where snum in(select snum from SC where cnum=(select cnum from C where cname='数据库原理'));
有问题找我
参考技术A 1,select Sname,birthday from S order by birthday Desc
2,select * from S where left([Sname],1) <>'王'
3,select S.Sname from SC LEFT JOIN S on SC.Snum=S.Snum
4,Select SC.Snum,S.Sname,C.Cnum from SC LEFT JOIN S on SC.Snum=S.Snum
LEFT JOIN C on SC.Cnum=C.Cnum where SC.grade>0
5,Select T.Tname,C.Cname from T LEFT JOIN C on T.Tnum=C.Tnum where T.sex='女'
6,select count(1) from T where T.title='教授'
7,SELECT SC.Cnum,C.Cname,COUNT(SC.Cnum) FROM SC LEFT JOIN C on SC.Cnum=C.Cnum
8,select b.* from S a LEFT JOIN S b on a.dept=b.dept where a.Sname='刘三'
9,select S.Sname,SC.grade from SC LEFT JOIN S ON SC.Snum=S.Snum LEFT JOIN C on SC.Cnum=C.Cnum where C.Cname='数据库原理'
group by [SubNo] ,s.SubName
参考技术B 基础查询,都是用select,返回记录集。如 select sname from s order by ....,年龄就是用现在年度-生日上的年度。自己试试看。 参考技术C 知道都不说。。一看就知道要考试了,,再来补。。 参考技术D select sname,birthday from s order by birthday desc;
select * from s where sname not like

以上是关于设在学生成绩管理数据库中有四个表的主要内容,如果未能解决你的问题,请参考以下文章

学生成绩管理系统——JAVA

用Python编写学生成绩分析系统

c语言学生成绩管理系统

mysql三表联查,

搭建一个简易的成绩管理系统的数据库

sql查询,学生表例子(自用)