- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关系模型和关系代数()
重命名运算(续) student-no name sex 1 Jones Male 2 Smith Male 3 Kate Female student student-no name sex 1 Jones Male 2 Smith Male ? ? sex=“Male” (student) student-no name sex 1 Jones Male 2 Smith Male boy ? boy ( ? sex=“male” (student) ) 重命名运算(续) 格式2: ? x (A1, A2, …, An) (E) 下标表示将E的结果关系命名为x,同时属性依次命名为A1, A2, …, An 思考:下标中列出的属性个数n可以任意不受限制么? 重命名运算(续) A R.B R.C S.B S.C D 1 2 3 4 5 6 R×S A B C 1 3 3 R B C D 4 5 6 S ? V(RA, RB, RC, SB, SC, SD) ( R×S ) RA RB RC SB SC RD 1 2 3 4 5 6 V 赋值运算(?) 赋值运算 编程语言中的赋值运算:将一个表达式的结果赋给变量 关系代数中的赋值运算:将一个关系代数表达式的结果赋给关系(变量) 形式 var ? E 表示将右边表达式E的结果,赋予左边的关系(变量)var 赋值运算(续) 用途 对复杂的关系代数表达式,可以用如下方法简化 将其中的一些子式分解出来,并赋值给“中间关系” 再利用中间关系代替这些子式重写原表达式 赋值运算(续) 例: ?A (?A=1 (?r.A, s.B (r x s) ) – ?B=2 (?r.A, s.B (r x s) ) ) ? ?A (r) 可以重写为 temp1 ? ?r.A, s.B (r x s) result = ?A (?A=1 (temp1) – ?B=2 (temp1) ) ? ?A (r) 或 temp1 ? ?r.A, s.B (r x s) temp2 ? ?A=1 (temp1) – ?B=2 (temp1) result = ?A (temp2) ? ?A (r) 除运算(÷) 除运算 (二元) 笛卡尔积的逆运算 设有关系R, S, T,满足 T = R x S,则 T ÷ R = S T ÷ S = R T ÷ R有效的充分必要条件:T包含R的全部属性,并额外含有不在R中的属性——这些属性将会出现在除的结果中 除运算(续) 更一般地,如果R x S ? T ,则 T ÷ R = S, S是满足R x S ? T的最大关系 T ÷ S = R, R是满足R x S ? T的最大关系 除运算(续) A B t1 1 t2 2 t1 1 t2 2 T R B 1 2 A t1 t2 ÷ = 除运算(续) A B t1 1 t2 2 t1 1 t2 2 T R B 1 2 A t1 t2 ÷ = 除运算(续) A B t1 1 t2 2 t1 1 t2 2 t3 1 T R B 1 2 A t1 t2 ÷ = 除运算(续) A B t1 1 t2 2 t1 1 t2 2 t3 1 T R B 1 2 A t1 t2 t3 ÷ = × 除运算(续) 除运算的输出 T ÷ R的属性集合: Z = X - Y X为T的属性集合,Y为R的属性集合 T ÷ R的元组集合:满足以下条件的所有元组 ① 出现在T在属性集Z = X - Y上的投影中 ② 与R所有元组的连接都出现在关系T中 除运算(续) 除运算的例子 T ÷ R 除运算(续) 设关系R的属性集为X,关系T的属性集为X+Y(Y为不在R中的属性集),则T ÷ R 可重写为: T ÷ R = ?Y ( T ) - ? Y ( ? Y (T) ×R - T ) 除运算(续) 应用举例: 设有学生表,课程表,以及反映学生,课程间联系的选修表。 以下可求得“选修所有课程”的学生(学号): ?学号,课程号 ( 选修表 ) ÷ ? 课程号 ( 课程 ) 以下可求得“所有学生都选修”的课程(课程号): ?学号,课程号 ( 选修表 ) ÷ ? 学号 ( 学生 ) 结论:“所有都…”的查询,一般可用除运算表示 除运算(续) 除运算的例子 T ÷ R 投影运算(?) – 例子 关系 r A B C ? ? ? ? 10 20 30 40 1 1 1 2 A C ? ? ? ? 1 1 1 2 A C ? ? ? 1 1 2 ?A,C (r) 投影运算(?) 投影运算(一元) 从输入关系r,产生一个仅包含r中某些属性的新关系
文档评论(0)