1、c)找出所有打印机制造厂商。select distinct makerfrom productwhere type= printer d)找出价格在$2000以上的手提电脑的型号、内存大小和屏幕尺寸。select model,ram,screenfrom laptopwhere price2000* e) 找出关系 Printer 中所有彩色打印机元组,注意属性 color 是一个布尔类 型。select model,type,pricefrom printerwhere color= true f)找出价格少于$2000并拥有12X或16X DVD的PC机的型号、速度和硬盘 尺寸。把 rd
2、属性看作一个字符串属性。select model,speed,hd2000 and rd= 12xDVDor rd= 16xDVD习题 6.1.4:基于习题 5.2.4给出的数据库模式和资料写出后面的查询语句以 及查询结果。Classes(class, type, country, numGuns, bore, displacement)Ships(name, class, launched)Battles(name, date)Outcomes(ship, battle, result)a)找出至少装备10门火炮的船只所属类别名和制造国家select country,typefrom cla
3、sseswhere numGuns=10b)找出在1918年以前下水的舰船的名字,并且把结果列名改为 ShipNamaselect name as shipnamefrom shipswhere launched30*b)查询制造商B制造的任意类型的所有产品的型号和价格。select model,price)select modwhere model in (select model from product where maker= Bwhere model in (select model from product where maker二 b)查询只卖手提电脑不卖PC的厂商。where
4、maker not in(select maker from product where type=pc)andtype= laptop c) d)查询出现在两种或两种以上 PC中的硬盘的尺寸。 e)查询每对具有相同速度和 RAM的PC机,每一对只出现一次。例如,如 果(i,j)符合,则(j,i)就不能出现在结果中出现。f)查询生产至少两种速度大于等于1000的计算机(PC或手提)的厂商。习题 6.2.3根据习题 5.2.4的数据库模式写出下面的查询,并用那个习题给 出的数据算出查询结果。Clasaes( class , type , country , numGuns , bore , di
5、splacement )Ships( name , class , launched )Battles( name , date )Outcomes( ship , battle , result )a)找出重量超过35000吨的船只。from ships,classeswhere ships.class二classes.class and displaceme nt35OO0b找出参加过 Guadalca nal战役的船只的名字、排水量和火炮数量。select name,displacement,numGunsfrom classes,ships,outcomeswhere ships.cl
6、ass=classes.class and ships.name=outcomes.ship andbattle= Guadalcanal c)列出所有数据库中提到的船只(注意,并非所有的船只都出现在 ships关系中)。select distinct ships.namefrom ships;select distinct shipwhere ship not in(from ships)d)找出同时具有战列舰和巡洋舰的国家。e )找出曾在某次战役中受创但后来又在其他战役中出现的船只。町找出参战船只至少有三艘来自同一个国家的战役。习题 6.3.1:基于习题 5.2.1 的数据库模式写出后面的
7、查询每题的答案中,你应当至少使用一个子查询,并且用两种不同的方法写出 每个查询(例如,使用各种不同的操作符 EXISTS IN、ALL和ANY)* a)找出速度在1200以上的PC的制造商。b)找出价格最高的打印机。 c)找出速度比任何一台PC都慢的手提电脑。 d)找出具有最高价格的产品(PC手提电脑或打印机)的型号。 e) 找出最低价格的彩色打印机的制造商。 f)在所有的PC中,找出具有最快速度并具有最少 RAM的PC制造商。习题 6.3.2基于习题 5.2.4的数据库模式写出后面的查询Classes( class , type , country , numGuns , bore , di
8、splacement )Ships ( name , class , launched )Battles ( name , date )Outcomes ( ship , battle , result )每题的答案中,你应当至少使用一个子查询,并且使用两种不同的方法写出每个查询(例如,使用各种不同的操作符 EXISTS IN、ALL和ANY。a)找出拥有火炮数量最多的船只所属的国家。*!b )找出至少有一艘船在战役中被击沉的船只种类。c)找出具有16英寸口径火炮的船只的名字。d)找出Kongo类型船只参加的战役。e)找出具有相同口径火炮的船只中火炮数量最多的船只名字。习题 6.4.6:根据习
9、题 5.2.1 的数据库模式写出后面的查询,再用该习题给出的数据算出该查询结果。*(a)查询PC速度的平均值。(b)查询价格在$2000以上的手提电脑的平均值。(c)查询制造商A生产的PC的平均价格。(d)查询制造商D生产的PC和手提电脑的平均价格。(e)求不同速度的PC平均价格。(f) 找出各个制造商生产的手提电脑的平均价格。(g)找出至少生产三种不同型号 PC机的制造商。(h)找出各个制造商制造的PC的最高价格。(i)找出速度在800以上的PC的平均价格。(j)对于所有生产打印机的制造商,查询其生产的 PC机的硬盘平均大小。习题 6.4.7基于习题 5.2.4给出的数据库模式和数据写出后面的查询语句以及查询结果。Classes ( class , type , country , numCuns , bore , displaceme nt )Shipsiame , class , launched )Battles(name , date )a)找出战舰类型的数量。b)找出不同类型战舰拥有的平均火炮数量。c)找出战舰的平均火炮数量。注意 c)和b)的不同在于:在计算均值的 时候,是使用战舰的数目还是战舰的类型数目。d)找出每一类型(class)的第一艘船下水的年份。e)找出每一类型中被击沉船的数目。f)找出至少有3艘
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1