第1题:
供应商关系:S(SNO,SNAME,CITY),属性依次是供应商号、供应商名称和所在城市
零件关系:P(PNO,PNAME,COLOR),属性依次是产品号、品名和颜色
工程关系:J(JNO,JNAME,CITY),属性依次是工程号、工程名和所在城市
供应关系:SPJ(SNO,PNO,JNO,QTY),属性依次是供应商号、产品号、工程号和数量
试用关系代数完成下列操作:
(1)求供应J1工程零件的所有供应商号;
(2)求供应J1工程P1零件的供应商号;
(3)求供应工程J1红色零件的供应商号;
(4)求S1供应商供应零件的所有工程号。
答案:
(1)select distinct SNO from SPJ where JNO='J1'
(2)select SNO from SPJ where JNO='J1' and PNO='P1'
(3)select distinct SNO from SPJ where JNO='J1' and PNO in(select * from P where COLOR='红')
(4)select JNO from SPJ where SNO='S1'
第2题:
编写SQL语句
设有如下4个关系模式:
S(SN,SNAME,CITY)
P(PN,PNAME,COLOR,WEIGHT)
J(JN,JNAME,CITY)
SPJ(SN,PN,JN,QTY)
其中:S表示供应商,SN为供应商编码,SNAME为供应商名字,CITY为供应商所在城市;P表示零件,PN为零件编码,PNAME为零件名字,COLOR为零件颜色,WEIGHT为零件重量;J表示工程,JN为工程编码,JNAME为工程名字,CITY为工程所在城市;SPJ表示供应关系,QTY表示提供的零件数量。
写出实现以下各题功能的SQL语句:
(1)取出所有工程的全部细节。
(2)取出所在城市为南京的所有工程的全部细节。
(3)取出为所在城市为上海的工程提供零件的供应商编码。
(4)取出为所在城市为上海或北京的工程提供红色零件的供应商编码。
(5)取出供应商与工程所在城市相同的供应商提供的零件编码。
(6)取出至少由一个和工程不在同一城市的供应商提供零件的工程编码。
(7)取出上海供应商不提供任何零件的工程编码。
(8)取出所有这样的一些<CITY,CITY>二元组,使得第1个城市的供应商为第2个城市的工程提供零件。
答案:
(1)select * from J
(2)select * from J where CITY='南京'
(3)select distinct SN from SPJ where JN in(select JN from J where CITY='上海')
(4)select SN from SPJ where JN in(select JN from J where CITY='上海' or CITY='北京') and PN in(select PN from P where COLOR='红色')
(5)select SPJ.PN from S,J,SPJ where S.SN=SPJ.SN and J.JN=SPJ.JN and S.CITY=J.CITY
(6)select distinct SPJ.JN from S,J,SPJ where S.SN=SPJ.SN and J.JN=SPJ.JN and S.CITY<>J.CITY
(7)select JN from J where JN not in(select distinct JN from SPJ where SN in(select SN from S where CITY='上海'))
(8)select S.CITY=J.CITY from S,J,SPJ where S.SN=SPJ.SN and J.JN=SPJ.JN
第3题:
● 建立一个供应商、零件数据库。其中“供应商”表 S(Sno,Sname,Zip,City)中的属性分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为:Sno→(Sname,Zip,City ) ,Zip→City。 “零件”表 P(Pno,Pname,Color,Weight,City) ,表示零件号、零件名、颜色、重量及产地。表 S与表 P 之间的关系 SP(Sno,Pno,Price,Qty)表示供应商代码、零件号、价格、数量。
a. “供应商”表 S属于 (42) 。
(42)
A. 1NF
B. 2NF
C. 3NF
D. BCNF
b. 若要求:供应商代码不能为空,且值是唯一的,供应商的名也是唯一的;零件号不能为空,且值是唯一的;一个供应商可以供应多种零件,而一种零件可以由多个供应商供应。请将下面的 SQL 语句空缺部分补充完整。
CREATE TABLE S(Sno CHAR(5) (43) ,
Sname CHAR(30) UNIQUE,
Zip CHAR(8),
City CHAR(20)
(44) ) ;
(43)
A. FOREIGN KEY
B. NOT NULL UNIQUE
C. FOREIGN KEY(Sno)
D. PRIMARY KEY(Sname)
(44)
A. NOT NULL
B. NOT NULL UNIQUE
C. PRIMARY KEY(Sno)
D. PRIMARY KEY(Sname)
第4题:
阅读以下说明,回答问题1至问题3,将答案写在答卷的对应栏内。
【说明】
下面是某ERP系统中零件供应模块的3个关系模式。
供应商:S(SNO,SNAME,CITY,STATUS)
零件:P(PNO,PNAME,WEIGHT,COLOR,CITY)
供应单:SP(SNO,PNO,PTY,SP Date)
属性说明:
SNO—供应商编号,SNAME—供应商名称,CITY—地址,STATUS—供应商状态
PNO—零件编号,PNAME—零件名称,WEIGHT—零件重量,COLOR—零件颜色, CITY—地址,PTY—数量,SP Date—订单日期
问题:
用SQL语句完成以下操作。
求供应红色零件北京供应商的编号、名称和状态。
第5题:
建立一个供应商、零件数据库。其中“供应商”表S(Sno,Sname,Zip,City)中的属性分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为:Sno→(Sname,Zip,City),Zip→City。“零件”表P(Pno,Pname,Color,Weight, City),表示零件号、零件名、颜色、重量及产地。表S与表P之间的关系SP(Sno,Pno, Price,Qty)表示供应商代码、零件号、价格、数量。
a.“供应商”表S属于(42)。
b.若要求:供应商代码不能为空,且值是唯一的,供应商的名也是唯一的:零件号不能为空,且值是唯—的;一个供应商可以供应多种零件,而一种零件可以由多个供应商供以。请将下面的SQL语句空缺部分补充完整。 CREATE TABLE S(Sno CHAR(5)(43), Sname CHAR (30) UNIQUE, Zip CHAR (8), City CHAR (20) (44)):
A.1NF
B.2NF
C.3NF
D.BCNF
第6题:
●某销售公司数据库的零件关系P(零件号,零件名称,供应商,供应商所在地,库存量),函数依赖集F={零件号→零件名称,(零件号,供应商)→库存量,供应商→供应商所在地)。零件关系P的主键为(34),该关系模式属于(35)。
(34)A.零件号,零件名称
B.零件号,供应商所在地
C.零件号,供应商
D.供应商,供应商所在地
(35) A.1NF
B.2NF
C.3NF
D.4NF
查询各种零件的平均库存量、最多库存量与最少库存量之间差值的SQL语句如下:
SELECT 零件号,(36)
FROM P
(37);
(36) A.AVG(库存量)AS平均库存量,MAX(库存量)-MIN(库存量)AS差值
B.平均库存量AS AVG(库存量),差值AS MAX(库存量)-MIN(库存量)
C.AVG库存量AS平均库存量,MAX库存量-MIN库存量AS差值
D.平均库存量AS AVG库存量,差值AS MAX库存量-MIN库存量
(37)A.ORDER BY供应商
B.ORDER BY零件号
C.GROUP BY供应商
D.GROUP BY零件号
查询供应商所供应的零件名称为P1或P3,且50≤库存量≤300以及供应商地址包含
雁塔路”的SQL语句如下:
SELECT零件名称,供应商,库存量
FROM P
WHERE (38)AND库存量 (39)AND供应商所在地 (40);
(38)A.零件名称='P1' AND零件名称='P3'
B.(零件名称= 'P1'AND零件名称='P3')
C.零件名称='P1' OR零件名称='P3'
D.(零件名称='P1' OR零件名称='P3')
(39)A.Between 50 T0 300
B.Between 50 AND 300
C.IN (50 T0 300)
D.IN 50 AND 300
(40)A.in '%雁塔路%'
B.like '___雁培路%'
C.like '%雁塔路%'
D. like '雁塔路%'
第7题:
● 建立一个供应商、零件数据库。其中“供应商”表 S(Sno,Sname,Zip,City)分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为:Sno→(Sname,Zip,City ) ,Zip→City。 “供应商”表 S属于 (53) 。
(53)
A. 1NF
B. 2NF
C. 3NF
D. BCNF
第8题:
建立一个供应商、零件数据库。其中"供应商"表S(Sno,Sname,Zip,City)中的属性分别表示供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为Sno→(Sname,Zip,City),Zip→City。"零件"表P(Pno,Pname,Color,Weight,City),表示零件号、零件名、颜色、重量及产地。表S与表P之间的关系SP(Sno,Pno,Price,Qty)表示供应商代码、零件号、价格、数量。"供应商"表S属于()
A.1NF
B.2NF
C.3NF
D.BCNF
第9题:
建立一个供应商、零件数据库。其中“供应商”表S(Sno,Sname,Zip,City)分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为:Sno→ (Sname,Zip,City),Zip→City。“零件”表P(Pno,Pname,Color,Weight,City),表示零件号、零件名、颜色、重量及产地。表S与表P之间的关系SP(Sno,Pno,Price, Qty)表示供应商代码、零件号、价格、数量。 A.“供应商”表S属于(36)。 B.若要求供应商名不能取重复值,关系的主码是Sno。请将下面的SQL语句空缺部分补充完整。CREATE TABLE S(Sno CHAR(5), Sname CHAR (30) (37), Zip CHAR(8), City CHAR (20) (38); C.查询供应“红”色零件,价格低于500,且数量大于200的供应商代码、供应商名、零件号、价格及数量的SQL语句如下:SELECT Sno,Sname,Pno,Price,Qty FROM S,SP WHERE Pno IN (SELECT Pno FROM P WHERE (39)) AND (40);
A.1NF
B.2NF
C.3NF
D.BCNF
第10题:
设有一个工程供应数据库系统,包括如下四个关系模式:
.S(SNQ,SNAME,STATUS,CITY);
.P(PNQ,PNAME,COLOR,WEIGHT);
.J(INQ,JNAME,CITY);
.SPJ(SNO,PNQ,JNO,QTY);
供应商表S由供应商号、供应商名、状态、城市组成;
零件表P由零件号、零件名、颜色、重量组成;
工程项目表J由项目号、项目名、城市组成;
供应情况表SPJ由供应商号、零件号、项目号、供应数量组成;
(1)用关系代数查询没有使用天津供应商生产的红色零件的工程号;
(2)用关系代数查询至少使用了供应商S1所供应的全部零件的工程号JNO;
(3)用SQL查询供应工程J1零件为红色的工程号JNO;
(4)用SQL查询没有使用天津供应商生产的零件的工程号;
(5)用SQL语句将全部红色零件改为蓝色;
(6)用SQL语句将(S2,P4,J6,400)插入供应情况关系。
参考答案:
(1)
(2)
(3)
(4)
(5)
(6)