数据库第三章作业及SQL上机实验标准答案.pdf
文本预览下载声明
第三章作业及SQL 上机实验标准答案
3.用SQL 语句建立第二章习题5 中的4 个表。
S 表
CREATE TABLE S
( SNO CHAR(2) PRIMARY KEY,
SNAME CHAR(20),
STATUS INT,
CITY CHAR(4)
);
P 表
CREATE TABLE P
( PNO CHAR(2) PRIMARY KEY,
PNAME CHAR(20),
COLOR CHAR(2),
WEIGHT INT
);
J 表
CREATE TABLE J
( JNO CHAR(2) PRIMARY KEY,
JNAME CHAR(20),
CITY CHAR(4)
);
SPJ
CREATE TABLE SPJ
( SNO CHAR(2),
PNO CHAR(2),
JNO CHAR(2),
QTY INT,
PRIMARY KEY (SNO,PNO,JNO),
FOREIGN KEY (SNO) REFERENCES S(SNO),
FOREIGN KEY (PNO) REFERENCES P(PNO),
FOREIGN KEY (JNO) REFERENCES J(JNO)
);
4.针对上题中建立的4 个表试用SQL 语言完成第二章习题5 中的查询。
(1)求供应工程J1 零件的供应商号码SNO;
SELECT SNO
FROM SPJ
WHERE JNO=’J1’;
(2 )求供应工程J1 零件P1 的供应商号码SNO;
SELECT SNO
FROM SPJ
WHERE JNO=’J1’ AND PNO=’P1’;
(3 )求供应工程J1 零件为红色的供应商号码SNO;
SELECT SNO
FROM SPJ
WHERE JNO=’J1’ AND PNO IN
(
SELECT PNO
FROM P
WHERE COLOR=’红’
);
或者
SELECT SNO
FROM SPJ, P
WHERE JNO=’J1’ AND SPJ.PNO=P.PNO AND COLOR=’红’;
(4 )求没有使用天津供应商生产的红色零件的工程号JNO ;
SELECT JNO
FROM J
WHERE NOT EXISTS
(
SELECT *
FROM SPJ
WHERE SPJ.JNO=J.JNO
AND SNO IN
(
SELECT SNO
FROM S
WHERE CITY=’天津’
)
AND PNO IN
(
SELECT PNO
FROM P
显示全部