Select sno,sname,sdept
From student
2查询全体学生的学号、姓名、性别,年龄,系别的信息
Select
From student
3查询全体学生的姓名及其出生年份
Select sname,datadiff(year,sage,2010) as 出生年份
From student
4查询信息工程系全体学生的名单
Select sname
From student
Where sdept=’信息工程系’
5查询所有年龄在20岁以下的学生姓名以及年龄
Select sname,sage
From student
Where sage<20
6查询考试成绩不及格的学生的学号
Select sno
From score
Where grade<60
7查询年龄在20-25(包括20、25)之间的学生的姓名、系别和年龄
Select sname,sdept,sage
From student
Where sage>=20 and sage<=25
8查询不在软件系、网络系、也不在外语系学生的姓名和性别
select sname,sex
from student
where sdept <>'软件系、网络系、外语系'
9查询所有姓李且全名为三个汉字的学生的姓名、学号、和性别
select sname,sno,sex
from student
where sname like '李_ _'
10查询姓名中第二个字为'阳'字的学生的姓名
select sname
from student
where sname like '_阳%'
11查询信息工程系年龄在20岁以下的学生的姓名
select sname
from student
where sage<20 and sdept='信息工程系'
12查询选修了3号课程的学生的学号及其成绩,查询结果按分数的降序排列
select sno,grade
from score
where cno='3'
order by grade desc
13查询全体学生的学号、姓名等情况,结果按照所在系的升序排序,同一系的按年龄降序排列
select sno,sname
from student
order by sdept asc,sage desc
14统计学生总人数
select count() as 人数
from student
15查询选修课课程的学生人数
select count() as 人数
from score
16计算1号课程的学生平均分数
select avg(grade) 均分
from score
where cno='1'
17查询选修了1号课程的学生最高分数
select max(grade) 最高分
from score
where cno='1'
18求各课程号及相应的选修课人数
select cno,distinct(sno)
from score
group by cno
19查询选修了3门以上课程的学生号
select sno
from score
group by sno
having count(cno)>3
20查询选修2学分的课程且该课程的成绩在90分以上的所有学生的姓名
select sname
from student,course,score
where studentsno=scoresno and coursecno=scorecno and ccredit=2 and grade>90
21查询每个学生的学号、姓名、选修的课程号和成绩
select studentsno,sname,cno,grade
from student,score,course
where studentsno=scoresno and scorecno=coursecno
22查询所有选修了1号课程的学生姓名
select sname
from student,score
where studentsno=scoresno and scorecno='1'
23查询选修了课程名为“计算机信息管理”的学生的学号和姓名
select sno,sname
from student,course,score
where studentsno=scoresno and coursecno=scorecno
and cname='计算机信息管理'
希望能给你帮助 差不多一样
1、select ssno,ssname,scgrade
from c join sc on ccno=sccno
join s on ssno=scsno
where ccno='c2'
2、
select distinct ssno,ssname
from c join sc on ccno=sccno and ccno=‘c2’
join s on ssno=scsno
3、
select ssno,ssname
from c join sc on ccno=sccno
join s on ssno=scsno
where ccname='Maths'
4、
select ssno,ssname
from c join sc on ccno=sccno
join s on ssno=scsno
where ccno in('c2','c4')
5、
select ssname,ssage
from c join sc on ccno=sccno
join s on ssno=scsno
where ccno<>'c2'
select ttid,t,tname from
t inner join s-t a on ttid=atid inner join
s on ssid=asid
group by ttid,t,tname having count(tid)>5
1 select from S
2 select sname, 2014-Sage from S
3 select sname, sage from S where sage between 20 and 22
4 select from S order by sdept asc, sage desc
5 select Ssno, sname from S, C, SC where Ssno=SCsno and SCcno=Ccno and Cname='数据库
--1、利用SQL语句创建以上三张表,并指定每张表的主键和外键;
--学生表(S):
create table student
(
sid varchar2(20) primary key,
sname varchar2(20),
age number,
sex varchar2(4),
department varchar2(20),
address varchar2(50),
birthplace varchar2(50)
);
--选课表(SC):
create table class
(
sid varchar2(20) references student(sid),
cid varchar2(20) primary key,
grade number
);
--教师表(C):
create table teacher
(
cid varchar2(20) references class(cid),
cname varchar2(20),
teacher varchar2(20)
);
--2、以上三张表各插入一条记录,
--记录值分别为:(s20110101,王林,20,男,经济管理系,浙江省杭州市西湖区168号,浙--江杭州)、
--(s20110101,1001,85)、(1001,网络数据库与应用,李小波);
insert into student
values
('s20110101',
'王林',
20,
'男',
'经济管理系',
'浙江省杭州市西湖区168号',
'浙江杭州');
insert into class values ('s20110101', '1001', 85);
insert into teacher values ('1001', '网络数据库与应用', '李小波');
--3、查询李老师所教的课程号、课程名称;
select cid, cname from teacher where teacher like '李%';
--4、查询年龄在23岁26岁之间的女学生的学号和姓名;
select sid, sname
from student
where sex = '女'
and age >= 23
and age <= 26;
--5、查询“李小波”所选修的全部课程名称;
select tcname
from student s, class c, teacher t
where ssid = csid
and ccid = tcid
and asname = '李小波';
--6、查询所有成绩都在90分以上的学生姓名及所在系;
select ssname, sdepartment
from student s, class c
where ssid = csid
and cgrade > 90;
--7、查询没有选修“ *** 作系统”课的学生的姓名;
select ssname
from student s, class c, teacher t
where ssid = csid
and ccid = tcid
and tcname = ' *** 作系统';
--8、查询与“李小波”同乡的男生姓名及所在系;
select sname, department
from student
where sex = '男'
and address in (select address from student where sname = '李小波')
and sname <> '李小波';
--9、查询英语成绩比数学成绩好的学生;
select ssname
from student s
where ssid in (select c1sid
from (select csid, cgrade
from class c, reachar t
where ccid = tcid
and tname = '英语') c1,
class (select csid, cgrade
from class c, reachar t
where ccid = tcid
and tname = '数学') c2
where c1sid = c2sid
and c1grade > c2grade);
--10、查询选修同一门课程时,女生比男生成绩好的学生名单;
select fsname
from (select ssname, ccid, cgrade
from student s, class c
where ssid = csid
and ssex = '女') f,
(select ccid, cgrade
from student s, class c
where ssid = csid
and ssex = '男') m
where fcid = mcid
and fgrade > mgrade;
--11、查询至少选修两门以上课程的学生姓名、性别;
select ssname, ssex
from student s, class c, teachar t
where ssid = csid
group by ssname, ssex
having count(distinct ccid) > 2;
--12、查询选修了李老师所讲课程的学生人数;
select count(distinct ssid)
from student s, class c, teacher t
where ssid = csid
and ccid = tcid
and tteacher like '李%';
--13、查询没有选修李老师所讲课程的学生;
select ssname
from student s, class c
where ssid = csid
and ccid not in (select cid from teacher where teacher like '李%');
--14、查询“ *** 作系统”课程得最高分的学生姓名、性别、所在系;
select sname, sex, department
from student s, class c, teacher t
where ssid = csid ccid = tcid
and cname = ' *** 作系统'
and cgrade in (select max(grade)
from class c1, teacher t1
where c1cid = t1cid
and cname = ' *** 作系统');
全部手打,望采纳。。。
如果
SELECT FROM Student 正常
而且 有 Sno, Sname 字段。
SELECT Sno, Sname FROM Student 报无效的列名。
看看是不是 逗号写成 全角的了……
以上就是关于数据库题,设有一个学生—课程数据库,其中包括三个表全部的内容,包括:数据库题,设有一个学生—课程数据库,其中包括三个表、设教学数据库中有3个关系:学生关系 S(Sno, Sname, Sage, Ssex)、学习关系 SC (Sno, Cno, Grade)、课程、数据库学生S表,字段Sid,Sname;老师T表,字段Tid,Tname;关联表S-T,字段Sid、Tid。查学生数大于5个的老师等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)