– l)用Transact-SQL语句表示下列操作.在学生选课库中实现其数据查询操作.

– ①求数学系学生的学号和姓名。

select sno,sname from student where sdept='MA';

– ②求选修了课程的学生学号。

select distinct sno from sc; 

– ③求选修C1课程的学生学号和成绩,并要求对查询结果按成绩降序排列,如果成绩相同则按学号升序排列。

select sno,grade from sc
where  cno='C1' order by grade desc,sno asc;

– ④获选修课程C1且成绩在80~90分之间的学生学号和成绩,并将成绩乘以系数0.8输出。

select sno,grade*0.8 from sc
where  cno='C1' and grade between 80 and 90;

–⑤求数学系或计算机系姓张的学生的信息。

select * from student where sdept in('MA','CS') and sname like '张%';

–(6)求缺少了成绩的学生的学号和课程号。

 select sno,cno from sc where grade is null;

–① 查询每个学生的情况以及他(她)所选修的课程。

select s.*,sc.*,c.* from student s,sc,course c
   where s.sno=sc.sno and c.cno=sc.cno;

–② 学生的学号、姓名、选修的课程名及成绩。

select s.sno,s.sname,c.cname,sc.grade from student s,sc,course c 
where s.sno=sc.sno and c.cno=sc.cno;

–③ 选修C1课程且成绩为90分以上的学生学号、姓名及成绩。

select s.sno,s.sname,sc.grade from student s,sc 
where s.sno=sc.sno and cno='C1' and grade>90;

–④ 查询每一门课的间接先行课(即先行课的先行课)。

select c1.cno,c2.cpno from course c1,course c2 where c1.cpno=c2.cno;
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐