在投影后如出现重复元组,应只保留一个。
【例4.6】求“营业库”所示的所有公司销售商品的品名清单。
关系运算式:П品名(营业库),结果如表 4.8所示。
表4.8 П品名(营业库)运算结果
品名 钢笔 圆珠笔 练习本 笔记本 信笺
实际查询问题一般既要通过选择操作又要通过投影操作求解。
【例4.7】求“营业库”中所有单价大于5元的商品品名和单价,求关系运算式。
关系运算式:П品名,单价(σ单价≥5(营业库)),其结果见表 4.9。
表4.9 从表4.6再作投影
品名 钢笔 圆珠笔 笔记本 单价 10.00 6.00 8.00 3.连接(Join)(列方向的运算)
从两个分别为n, m目的关系R和S的广义笛卡尔积中选取满足给定条件F的元组组成新的关系称为R和S的连接,记作R∞FS(F=A θ B)。其中A和B分别为R和S上度数相等且可比的属性列,θ是算术比较符(>,≥,<,≤,=,≠)。
【例4.8】关系R和S如表4.10和表4.11所示。求R∞(A=C)S, 连接结果如图4.12所示。
表4.10 关系R 表4.11 关系S
A A1 A2 B 101 201
C A1 A2 A3
D 81 82 83 E 85 70 90 表4.12 关系R与S的连接运算 A A1 A2
如算术比较符为“=”,称为等值连接。
自然连接(Natural Join)是一种特殊而常用的连接。若R和S具有相同名的属性组,且连接条件为R和S中两关系所对应的同名属性列的值相等,则称为自然连接。 对于自然连接,无须标明条件表达式F,在结果中要把重复的属性去掉。如果表4.11中关系S的字段“C”名字改为“A”,关系R和S可作自然连接,写作R∞S,结果如表4.13所示。
B 101 201 C A1 A2 D 81 82 E 85 70 表4.13 关系R与S的自然连接运算
A A1 A2
在关系优化过程中分解为高一级范式后的两个关系如能通过自然连接得到原来的关系,称之为实现“无损连接”。 关系优化过程要求分解具有“无损连接性”,这是关系分解的准则之一。
4.除(Division)(列方向的运算)
给定关系R(x,y)与S(z)其中x,y,z为属性集(也可为单属性),R中的y和S中的z是同名的属性(集)也可以有不同的属性名, 但必须出自相同的域集。在求解R÷S时,对R按x的值的分组,然后检查每一组,如某一组中的y包含S中全部的z,则取该组中的x的值作为关系P中的一个元组, 否则不取。R÷S的商等于关系P。
【例4.9】从表4.2关系“营业库”中求既销售钢笔,又销售圆珠笔的子公司代码。
B 101 201 D 81 82 E 85 70
相关推荐: