第2章 作业:
1.试述等值连接与自然连接的区别和联系。
答:区别:等值连接不要求两个联系中进行比较的分量是相同的属性组,而只要可以进行相等比较即可,是从行进行的一种计算。而自然连接要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,是从行和列进行的一种运算。
联系:等值连接是关系的广义笛卡尔积的子集。自然连接是一种特殊的等值连接。即两者都是两个关系连接之后的产物。
2. 关系代数表达式实现如下查询:设有一个设备管理系统的数据库,已知在数据库中有下列基本表,结构如下:
设备表Equipment(Eno, Ename, Ebuyday, Etypeid, Etypename)
人员表Person(Pno, Pname, Psex, Pbirth, Pposition)
设备使用表Use(Eno, Pno, Borrowday, Usetime, Fee)
(1)查询设备使用表Use中每种设备收费金额超过200的设备编号和收费金额。
(2)检索借出设备名称(Ename)为“笔记本”的员工姓名,借出日期和收费金额。
(3)检索借出设备使用时间(Usetime)超过一个月的员工姓名、设备编号。
答:(输出结果为投影Π,查询条件为选择σ,多表之间连接为⨝)
(1)ΠEno,Fee (σFee >200(Use))
(2)ΠPname,Borrowday,Fee (σEname=’笔记本’(Equipment⨝Use⨝Person))
(3)ΠPname,Eno (σUsetime>’31’(Use⨝Person))
或 ΠPname,Eno (σUsetime > ’1’(Use⨝Person))