姓名。销售SALE(S,G,QUANTITY)其属性是商店编号,商品编号,销售数量。商品GOODS(G,GNAME,PRICE)其属性是商品编号,商品名称,单价。(1)试写出下列查询的关系代数表达式、元组表达式和关系逻辑规则:检索销售“冰箱”的商店的编号和商店名称。解:关系代数表达式:πS,SNAME(σGNAME冰箱(SHOPSALEGOODS))元组表达式:tuvwSHOPu∧SALEv∧GOODSw∧u1v1∧v2w1∧w2冰箱∧t1u1∧t2u2关系逻辑规则:Wu1u2←SHOPu1u2u3u4∧SALEu1v2v3∧GOODSv2冰箱w3(2)试写出上面第1问的SELECT语句表达形式。
解:SELECT语句如下:SELECTAS,SNAMEFROMSHOPA,SALEB,GOODSCWHEREASBSANDBGCGANDGNAME冰箱;
(3)试写出下列操作的SQL语句:从SALE表中,把“开开商店”中销售单价高于1000元的商品的销售元组全部删除。
解:DELETEFROMSALEWHERESIN(SELECTSFROMSHOPWHERESNAME开开商店)ANDGIN(SELECTGFROMGOODSWHEREPRICE1000);
(4)写一个断言,要求区域名为“EAST”的商店里销售商品的单价不能低于100元。
解:CREATEASSERTIONASSE8CHECK(100ALL(SELECTPRICEFROMSHOPA,SALEB,GOODSC
fWHEREASBSANDBGCGANDAREAEAST));或CREATEASSERTIONASSE8CHECK(NOTEXISTS(SELECTFROMSHOPA,SALEB,GOODSCWHEREASBSANDBGCGANDAREAEASTANDPRICE100));
(5)试写出下列操作的SQL语句:统计区域名为“EAST”的所有商店销售的每一种商品的总数量和总价值。要求显示(G,GNAME,SUM_QUANTITY,SUM_VALUE),其属性为商品编号、商品名称、销售数量、销售价值。
解:SELECTCG,GNAME,SUM(QUANTITY)ASSUM_QUANTITY,PRICESUM(QUANTITY)ASSUM_VALUEFROMSHOPA,SALEB,GOODSCWHEREASBSANDBGCGANDAREAEASTGROUPBYCG,GNAME;(注:SELECT子句中的属性CG,GNAME应在分组子句中出现)
4、今有一个层次数据库实例,试用子女一兄弟链接法和层次序列链接法画出它的存储结构示意图。
f5、请设计一个图书馆数据库,此数据库中对每个借阅者保存读者记录,包括:读者号,姓名,地址,性别,年龄,单位。对每本书存有:书号,书名,作者,出版社。对每本被借出的书存有读者号、借出日期和应还日期。要求:给出E一R图,再将其转换为关系模型。答:
f关系模型为:读者(读者号,姓名,地址,性别书(书号,书名,作者,出版社)借书(读者号,书号,借出日期,年龄,单位)应还日期)6、设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:供应商(供应商代码,供应商姓名,供应商r