数据库原理SQL复习材料doc.docx
- 文档编号:7669250
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:5
- 大小:101.54KB
数据库原理SQL复习材料doc.docx
《数据库原理SQL复习材料doc.docx》由会员分享,可在线阅读,更多相关《数据库原理SQL复习材料doc.docx(5页珍藏版)》请在冰豆网上搜索。
数据库原理SQL复习材料doc
三、设计题一
1.设有4个关系模式:
供应商关系:
S(SNO,SNAME,CITY),属性依次是供应商号、供应商名称和所在城市;
零件关系:
P(PNO,PNAME,COLOR),属性依次是零件号、零件名和颜色;
工程关系:
J(JNO,JNAME,CITY),属性依次是工程号、工程名和所在城市;
供应关系:
SPJ(SNO,PNO,JNO,QTY),属性依次是供应商号、零件号、工程号和数量。
用SQL语句实现下列操作:
(1)查询S1号供应商所在城市。
(2)查询为J1号工程提供P1号零件的供应商号和供应数量,查询结果按供应数量降序排列。
(3)查询为J1号工程提供红色零件的供应商号。
(4)查询与其提供零件的供应商所在城市为同一城市的工程号。
(5)统计杭州供应商的数量。
(6)统计每个工程的零件总数。
(7)查询比S1号供应商供应的零件数量多的供应商号。
(8)删除为J1号工程提供零件的供应商信息。
2、现有关系数据库如下:
数据库名:
教师数据库
教师表(编号char(6),姓名,性别,民族,职称,身份证号)
课程表(课号char(6),名称)
任课表(ID,教师编号,课号,课时数)
用SQL语言实现下列功能的sql语句代码:
(1)・创建上述三表的建表代码;
要求使用:
主键(教师表•编号,课程表•课号)、默认(民族)、非空(民族,姓名)、他(性别:
性别只能是男或者女、课时数:
课时数要求在0-200Z间,包括0和200),除指定外,其它字段类型可自定。
(2)•将下列课程信息添加到课程表的代码
课号
课程名称
100001
SQLServer数据库
100002
数据结构
100003
VB程序设计
修改课号为100003的课程名称:
VisualBasic程序设计
删除课号为100003的课程信息
(3)•检索有一门或一门以上课程课时数大于90的所有教师的信
息,包括编号、姓名。
3、现有关系数据库如下:
数据库名:
医院数据库
医生表(编号,姓名,性别,出生日期,职称)
病人表(编号,姓名,性别,民族,身份证号)
病历表(ID,病人编号,医生编号,病历描述)
用SQL语言实现下列功能的sql语句代码:
(1).创建上述三表的建表代码;
要求使用:
主键(医生表•编号,病人表•编号,病历表.ID).非空(职称,姓名)、检查(性别:
只能取值为男或者
女),字段数据类型可自选
师'
(3).写出查询1970年以前出生的医生
(4).检索有病人的医生信息。
三、设计题一
1、
(1)SELECTCITYFROMSWHERESNO-S1'
(2)SELECTSNO,QTYFROMSPJWHEREJNO-J1'ANDPNO-P1'ORDERBYQTYDESC
(3)SELECTSNOFROMPJOINSPJON(P.PNO=SPJ.PNO)
WHERECOLORF'ANDJNO-J1'
(4)SELECTJ.PNOFROMJJOINSPJON(J.PNO=SPJ・PNO)
JOINSON(S.SNOSPJ.SNO)WHEREJ.CITY=S.CITY
(5)SELECTCOUNT(SNO)FROMSWHERECITY-杭州’
(6)SELECTJNO,SUM(QTY)FROMSPJGROUPBYJNO
(7)SELECTSNOFROMSPJGROUPBYSNOHAVINGSUM
(QTY)>(SELECTSUM(QTY)FROMSPJWHERESNO-S1)
(8)DELETEFROMSWHERESNOIN(SELECTSNOFROMSPJWHEREJNO-J1)
2、
1.
createtable教师表
(编号•char(6)primarykey
姓名char(4)notnull,
性别char
(1)check(性别in(,男—'女,
民族char(8)default'汉族'notnull,
职称char(12),
身份证号char(18)
createtable课程表
insert
课程表values(11000021r
update课程表set名称iVisualBasic程序设计,where课号「100003’
delete课禾呈表where课号='100003'
3.
select编号/姓名from教师表
where编号in(selectdistinct教师编号from任课表wh©"课时数>=90)
3、
1・createtable医生表
(编号char(6)primarykey,
姓名char(4)notnull,
性别char
(1)check(性别in(l男—,女T),
出生日期datetime,
职称char(18)notnull
)
createtable病人表
(编号char(6)primarykey,
姓名char(4)notnull^
性别char
(1)check(性别in(l男—'女')),
民族char(10),
身份证号char(18)notnull
createtab丄㊀》丙历表
(IDINT,
病人编号char(6),
医生编号char(6)f
病历描述char(1000)
)
2.
insert医生表values(T00001'杜医生','男','1963-5-18',
副主任医师')
insert医生表
values(TOO002J,郭医生-'女、,
7950-7—26-
,副主任医师T
insert医生表
values(11000031f,刘医生—,男-
11973-9-181,
惬师T
update医生表set职称=!
.4;任医师1where编号
=,100002,
delete医生表where编号'=11000031
select*from医生表where出生日期〈T970-01-01'
4.
select编号,姓名,性别,出生口期,职称from医生表
where编号in(select医生编号from医疗表)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 SQL 复习 材料 doc