计算机上机作业 数据库的题,找位高手做下,谢谢了

计算机上机作业 数据库的题,找位高手做下,谢谢了,第1张

如果你觉得我的博客的资料和经验还好的话,我就毛遂自荐了

还有就是考试大和考试吧,这两个网站的计算机等级还是可以看看的,官方网站的论坛上的自考也多。

!希望对你有用:)祝你顺利通过考试!

1.select sno from spj where sno=j1

2.select sno from spj where sno=j1 and pno = p1

3.select sno from spj where sno = j1 and pno in ( select pno from p where color = red)

4.select jno from spj where sno not in ( select sno from s where city = tianjin)

And pno not in ( select pno from p where color = red)

5.select sname city from s

6.select PNAME,COLOR,WEIGHT from p

7.select jno from spj where sno = s1

8. select pname ,qty from spj as a ,p as b where a.pno = b.pno and jno = j2

9. select pno from s , spj where s.no = spj.sno and city = shanghai

10. select jno from s , spj where s.no = spj.sno and city = shanghai

11.select jno from s , spj where s.no = spj.sno and city ! = tianjin

borrower:

create table borrower(

借书证号 char[5] primary key,

姓名 char[20] not null,

系名 char[10],

班级 char[10])

create table loans(

借书证号 char[5],

图书登记号 char[6],

结束日期 DATE,

primary key(借书证号,图书登记号),

foreign key(借书证号) reference borrower(借书证号),

foreign key(图书登记号 reference books(图书登记号))

create table books(

索书号 char[10],

书名 char[20],

图书登记号 char[6] primary key,

出版社 char[20],

价格 smallint))

(1)

select borrower.借书证号,姓名,系名,temp.total as 借书数量

from borrower,(select 借书证号,count(图书登记号) as total

from loans group by 借书证号

where tatal>5 as temp(借书证号,total))

(2)

select borrower.姓名,系名,书名,结束日期

from borrower,loans,books

where borrower.借书证号=loans.借书证号

and books.图书登记号=loans.图书登记号

and 书名 in(selcet 书名

from borrower,loans,books

where borrower.借书证号=loans.借书证号

and books.图书登记号=loans.图书登记号

and 姓名='赵垒')

(3)

create view SB

as

select borrower.借书证号,姓名,班级,books.图书登记号,书名,出版社

,借书日期

from borrower,book,loans

where borrower.借书证号=loans.借书证号

and books.图书登记号=loans.图书登记号

and 系名='信息系'

1

create table student(

sno char[10] primary key,

sname char[20] not null,

ssex char[2],

sage smallint check( sage between 16 and 30),

sdept char[4])

create table course(

cno char[10] primary key,

cname char[20] not null,

cteacher char[20])

create table sc(

sno char[10],

cno char[10],

grade smallint check(grade is null or grade between 0 and

100),

primary key(sno,cno)

foreign key sno reference student(sno),

foreign key cno reference course(cno))

2

insert into student values('102','李四','男',16,'数学')

下同

insert into course values('203',' *** 作系统','程羽')

下同

insert into sc values('101','203',82)

下同

3

(1) select cname,grade

from sc,student,course

where student.sno=sc.sno and course.cno=sc.cno

and sname='张三'

(2) select sname from student

where sno in(select sno from sc x

where not exists(

select * from sc y

where x.sno=y.sno

and y.grade<60))

(3) select cname,sname,grade

from student,course sc,(select cno,max(grade) from sc group by cno

as temp(cno,max))

where student.sno=sc.sno and course.cno=sc.cno

and grade=max and course.cno=temp.cno

4

delete * from sc where grade<60

5

update sc

set grade=(select avg(grade) from sc where cno='203')

where sno=105

仅供参考


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10868812.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存