实验三:查询数据2

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《数据库原理》实验报告(三)
实验名称多表查询
姓名学号班级
实验目的(1)熟悉使用单表查询命令;
(2)熟悉使用连接查询命令;
(3)熟悉使用嵌套查询命令;
(4)熟悉在查询中使用聚集函数。

实验内容如果某个小题用连接查询和嵌套查询均能完成,要求写出两种查询命令。

一、完成下列基于S表、P表、J表和SPJ表的查询
(1)查询每种颜色的零件中重量大于等于该颜色零件平均重量的零件信息;
命令:
select *
from p x
where weight >=(
select avg (weight)
from p y
where x.color = y.color );
(2)查询工程J1使用的数量最大的零件号及数量;
命令:
SELECT PNO,QTY
FROM SPJ
WHERE
JNO='J1'AND QTY>=ALL (
SELECT MAX(QTY)
FROM SPJ
成绩
WHERE JNO='J1' );
(3)查询使用了所有的供应商的零件的工程号;
命令:
SELECT DISTINCT JNO
FROM SPJ X
WHERE NOT EXISTS
(SELECT *
FROM SPJ Y
WHERE NOT EXISTS
(SELECT *
FROM SPJ Z
WHERE
Z.SNO=Y.SNO AND
Z.JNO=X.JNO ) );
(4)查询使用了所有零件的工程号。

命令:
SELECT JNO
FROM SPJ X
WHERE NOT EXISTS
(SELECT *
FROM P
WHERE NOT EXISTS
(SELECT*
FROM SPJ B
WHERE B.JNO=X.JNO AND B.PNO=P.PNO)); (5)查询给所有工程都供应了零件的供应商信息。

命令:
SELECT *
FROM S
WHERE NOT EXISTS(
SELECT *
FROM SPJ Y
WHERE NOT EXISTS
(SELECT *
FROM SPJ Z
WHERE Z.SNO=S.SNO AND Z.PNO=Y.PNO)); (6)查询至少使用了供应商S1供应的全部零件的工程号。

命令:
SELECT DISTINCT JNO
FROM SPJ X
WHERE NOT EXISTS
( SELECT *
FROM SPJ Y
WHERE SNO='S1' AND NOT EXISTS
( SELECT *
FROM SPJ Z
WHERE Z.PNO=Y.PNO AND Z.JNO=X.JNO));。

相关文档
最新文档