SQL数据库实验报告2

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

南京理工大学紫金学院实验报告书

课程名称:《数据库系统》

实验题目:实验2

用SQL语句创建数据库和表班级:0906012

学号:090601257

姓名:朱书宏

指导教师:叶庆生

一、实验目的

1.更熟悉SQL语句对数据库的查询命令

2. 对数据库的实际运用有一定的认识

3.熟悉SQL的操作界面

二、实验内容

1.根据下列数据库模式

Product(marker, model, type)

PC(model, speed, ram, hd, rd, price)

Laptop(model, speed, ram ,hd, screen, price)

Printer(model, color, type, price)

用SQL语句写出后面的查询,并使用习题1提供的资料写出查询结果。

* a) 找出所有价格在$1200以下的PC机的型号、速度和硬盘大小。

* b) 要求同(a),但是重命名列speed为megahertz以及列hd为gigabytes。

c) 找出所有打印机制造厂商。

d) 找出价格在$2000以上的手提电脑的型号、内存大小和屏幕尺寸。

* e) 找出关系Printer中所有彩色打印机元组,注意属性color是一个布尔类型。

f) 找出价格少于$2000并拥有12X或16X DVD的PC机的型号、速度和硬盘尺寸。把rd属性看作一个字符串属性。

* g) 查询硬盘容量至少在30G的手提电脑制造商及电脑的速度。

* h) 查询制造商B制造的任意类型的所有产品的型号和价格。

i) 查询只卖手提电脑不卖PC的厂商。

! j) 查询出现在两种或两种以上PC中的硬盘的尺寸。

! k) 查询每对具有相同速度和RAM的PC机,每一对只出现一次。例如,如果(i,j)符合,则(j,i)就不能出现在结果中出现。

!!l) 查询生产至少两种速度大于等于1000的计算机(PC或手提)的厂商。

2.根据下列数据库模式

Classes ( class , type , country , numCuns , bore , displacement )

Ships( name , class , launched )

Battles( name , date )

Outcomes ( ship , battle , result )

用SQL语句写出后面的查询,并使用习题2给出的数据库模式和资料写出查询结果。

a) 找出至少装备10门火炮的船只所属类别名和制造国家。

b) 找出在1918年以前下水的舰船的名字,并且把结果列名改为ShipName。

c) 找出所有在战役中被击沉的船只和那次战役的名字。

d) 找出具有相同类别名的所有船只。

e) 找出所有以”R.”字符开头的船只的名字。

! f) 找出所有包括三个或三个以上单词的船只名字(例如King George V)。

g)找出重量超过35000吨的船只。

h)找出参加过Guadalcanal战役的船只的名字、排水量和火炮数量。

i)列出所有数据库中提到的船只(注意,并非所有的船只都出现在ships关系中)。

!j)找出同时具有战列舰和巡洋舰的国家。

!k)找出曾在某次战役中受创但后来又在其他战役中出现的船只。

!l) 找出参战船只至少有三艘来自同一个国家的战役。

三、实验结果

1.

a) 找出所有价格在$1200以下的PC机的型号、速度和硬盘大小。

select model,speed,hd

from pc

where price<1200

b)要求同(a),但是重命名列speed为megahertz以及列hd为gigabytes。 select model,speed as megahertz,hd as gigabytes

from pc

where price<1200

c)找出所有打印机制造厂商。

select distinct maker

from product

where type='printer'

d)找出价格在$2000以上的手提电脑的型号、内存大小和屏幕尺寸。

select model,ram,screen

from laptop

where price>2000

e)找出关系Printer中所有彩色打印机元组,注意属性color是一个布尔类型。

select model,type,price

from printer

where color='true'

f)找出价格少于$2000并拥有12X或16X DVD的PC机的型号、速度和硬盘尺寸。把rd属性看作一个字符串属性。

select model,speed,hd

from pc

where price<2000 and rd='12xDVD'or rd='16xDVD'

g)查询硬盘容量至少在30G的手提电脑制造商及电脑的速度。

select maker,speed

from product,laptop

where laptop.model=product.model and laptop.hd>30

h)查询制造商B制造的任意类型的所有产品的型号和价格。

select model,price

from pc

where model in(select model from product where maker='B') select model,price

from printer

where model in(select model from product where maker='B') select model,price

from laptop

where model in(select model from product where maker='B')

i)查询只卖手提电脑不卖PC的厂商。

select distinct maker

相关文档
最新文档