关于sql查询的一个题目,希望高手能够帮帮我!!!
基于关系student,sc,course,用SQL完成以下任务:1.查询每个学生的总学分:2.查询选修两门或者两门以上课程的学生姓名及性别:...
基于关系student,sc,course,用SQL完成以下任务:
1.查询每个学生的总学分:
2.查询选修两门或者两门以上课程的学生姓名及性别: 展开
1.查询每个学生的总学分:
2.查询选修两门或者两门以上课程的学生姓名及性别: 展开
2个回答
展开全部
汗,楼主表结构都没说,下面我按一般的情况建3张表
create table student
(
--学号
sno varchar(3) not null primary key,
--姓名
sname varchar(4) not null,
--性别
ssex varchar(2) not null
)
create table course
(
--课程号
cno varchar(5) not null primary key,
--课程名称
cname varchar(10) not null,
)
create table sc
(
--学号
sno varchar(3) not null references student(sno),
--课程号
cno varchar(5) not null references course(cno),
--成绩
degree decimal(4,1)
)
2.根据建立的表结构解答楼主提的两个问题
(1)select stu.sno,sname,sum(degree)as 总分
from student as stu
left join sc as s on s.sno=stu.sno
group by stu.sno,sname
(2)select sname,ssex
from student
where sno in
(
select sno from sc
group by sno
having count(*)>=2
)
create table student
(
--学号
sno varchar(3) not null primary key,
--姓名
sname varchar(4) not null,
--性别
ssex varchar(2) not null
)
create table course
(
--课程号
cno varchar(5) not null primary key,
--课程名称
cname varchar(10) not null,
)
create table sc
(
--学号
sno varchar(3) not null references student(sno),
--课程号
cno varchar(5) not null references course(cno),
--成绩
degree decimal(4,1)
)
2.根据建立的表结构解答楼主提的两个问题
(1)select stu.sno,sname,sum(degree)as 总分
from student as stu
left join sc as s on s.sno=stu.sno
group by stu.sno,sname
(2)select sname,ssex
from student
where sno in
(
select sno from sc
group by sno
having count(*)>=2
)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询