- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
专门的关系运算
An Introduction to Database System 2.4.2 专门的关系运算 主讲:易国洪 武汉工程大学计算机学院 回顾 2.4 关系代数 2.4.1 传统的集合运算 并、交、差、广义的笛卡尔积 特点:都是二元运算 其中并、交、差运算的二元关系R和S具有相同的目,且相应的属性来自同一个域。 2.4.1 传统的集合运算 1、并运算 2.4.1 传统的集合运算(续) 2、交运算 2.4.1 传统的集合运算(续) 3、差运算 4、广义的笛卡尔积 回顾 2.4.2 专门的关系运算 选择 投影 连接 除 1.选择运算(Select) 选择运算选出满足给定谓词的元组。 用小写希腊字母σ(sigma)来表示选择 将谓词写作σ的下标 参数关系在σ后的括号中 例如:为了查询student关系中系为‘CS’的全体学生,就应写为: σsdept =‘CS’(student) 1.选择运算(续) 1.选择运算(续) 1.选择运算(续) 选择运算一般通式的写法及含义 在关系R中选择满足给定条件的诸元组 = {t |t ?R ∧ F (t) = .T.} F表示选择条件,它是一个逻辑表达式 1.选择运算(续) σF(R) = {t |t?R∧F (t)= .T. } F:选择条件,是一个逻辑表达式,基本形式为: [?( ] X1θY1 [ )] [φ [?( ] X2θY2 [ )]]… [ ]:表示任选项 θ:比较运算符(>,≥,<,≤,=或) X1,Y1等:属性名、常量、简单函数; 注:属性名也可以用它的序号来代替; φ:逻辑运算符(∧或∨) …:表示上述格式可以重复下去 1.选择运算(续end) 2.投影运算(Project) 假设我们想要列出所有学生的姓名、性别和年龄,而不关心学生的学号和所在的系。 投影运算可以产生这样的关系,投影运算是一元运算,返回作为参数关系的某些属性。 由于关系是一个集合,所以所有重复行均被除去。 投影运算用小写希腊字母π表示 2.投影运算(续) 因此,我们把列出所有学生的姓名、性别和年龄的查询写为: πsname,ssex,sage (student) 2.投影运算(续) 2.投影运算(续) 投影运算一般通式的写法及含义 从R 中选择出若干属性列组成新的关系 πA (R ) = { t [A ] | t ? R } A:R中的属性组 2.投影运算(续) 3. 连接(Join) 连接运算也称为θ连接。 它可从两个关系的笛卡尔积中选取属性间满足一定条件的元组。记作: 3. 连接(续) 3. 连接(续) 1、等值连接 θ是比较运算符。当θ为“=”时的连接运算称为等值连接。它可从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组。 3. 连接(续) 3. 连接(续) 2、自然连接 是一种特殊的等值连接。 特点:它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果集中把重复的属性列去掉。即若R和S中具有相同的属性组B,则自然连接可记作: 3. 连接(续) 关系代数——实例 实例1分析 1、查询选修了2号课程的学生的学号 课程号、学号←SC表 2号课程的选课情况 σcno=‘2’(SC) 实例1分析(续) 选修2号课程的学号 πsno(σcno=‘2’(SC)) 实例2分析 2、列出选修‘数学’课的学生的学号、姓名以及成绩 学号、姓名←Student表 课程名称←Course表 成绩←SC表 Student← SC→Course 实例2分析(续) ‘数学’课 σcname = ‘数学’ (Course) 实例2分析(续) 实例2分析(续) 选修‘数学’的学生的学号、姓名、成绩 End 选修‘数学’的学生记录 ‘选修‘数学’课的记录 * * 2.4.1 传统的集合运算(续) 属性 元组 分量 关系 t∈R 表示t是关系R的一个元组 t[Ai]则表示元组t中相应于属性Ai的一个分量 若A={A1, A2 ,…,AK}则称A为属性组或属性列 t[A] =(t[A1],t[A2],…t[Ak])表示元组t在属性组A上诸分量的集合 为一元运算,因为它们 对一个关系进行运算 为二元运算,因为它们 对两个关系进行运算 σsdept =‘CS’(student) σ 选择运算是从行的角度进行的运算 σ F (R) 查询student关系中‘IS’系的全体男生: σsdept =‘IS’ ∧ ssex = ‘男’(student) σ5 =‘IS’ ∧ 3 = ‘男’(student) π 投影运算主要是从列的角度进行运算 举例: 查询学生的姓名和所在系? 即求Student关
文档评论(0)