数据库实验多表查询实验报告

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

附页

实验内容:

针对实验数据库shiyan,完成以下单表查询操作:

1.查询为工程J1供应红色零件的供应商号码SNO。

2.查询没有使用天津供应商生产的零件并且当前工程所使用零件的颜色全部为红色的工程号JNO。

3.查询至少选用了供应商S1所供应的全部零件的工程号JNO。

4.找出工程项目J2使用的各种零件的名称及其重量。

5.找出上海厂商供应的所有零件号码。

6.找出使用上海产的零件的工程名称。

7.找出没有使用天津产的零件的工程号码。

8.找出重量最轻的红色零件的零件编号PNO。

9.找出供应商与工程所在城市相同的供应商提供的零件号码。

10.找出所有这样的一些<CITY,CITY,PNAME>三元组,使得第一个城市的供应商为第二个城市的工程供应零件的名称为PNAME。

11.重复第15题,但不检索两个CITY值相同的三元组。

12.找出供应商S1为工程名中含有“厂”字的工程供应的零件数量总和。

实验方法、步骤以及实验结果:

操作1

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

use ShiYan

go

select sno

from spj

where jno='j1'and pno in(select pno

from p

where color='红')

操作结果:

操作2

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

use shiyan

go

select jno

from spj

where sno in (select sno

from s

where city<>'天津')

and

pno in (select pno

from p

where color='红')

操作结果:

操作3

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

select distinct jno

from spj as x

where not exists ( select *

from spj as y

where sno='s1'

and not exists (select *

from spj as z

where z.pno=y.pno and z.jno=x.jno))

操作结果:

操作4

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

use shiyan

go

select pname,weight

from p,spj

where spj.jno='j2' and spj.pno=p.pno

或者

select pname,weight

from p

where pno in (select distinct pno from spj where jno='j2') 操作结果:

操作5

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

use shiyan

go

select distinct pno

from spj

where sno=(select sno

from s

where city='上海')

操作结果:

操作6

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

use shiyan

go

select distinct jname

from s,j,spj

where spj.jno=j.jno and spj.sno=(select sno

from s

where s.city='上海') 操作结果:

操作7

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

use shiyan

go

select distinct jno

from spj

where sno in (select sno

from s

where city<>'天津')

操作结果:

操作8

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

use shiyan

go

select pno

from p

where weight=(select min(weight)

from p

where color='红')

或者

select top 1 pno

from p

where color='红'

order by weight

操作结果:

操作9

(1)打开SQL Server查询分析器。

(2)在查询分析器中输入如下所示的SQL脚本:

use shiyan

go

select distinct pno

from s,j,spj

where s.sno=spj.sno and j.jno=spj.jno and s.city=j.city 操作结果:

相关文档
最新文档