关系数据模型及其运算基础.ppt

上传人:xt****7 文档编号:5306729 上传时间:2020-01-25 格式:PPT 页数:29 大小:915.50KB
返回 下载 相关 举报
关系数据模型及其运算基础.ppt_第1页
第1页 / 共29页
关系数据模型及其运算基础.ppt_第2页
第2页 / 共29页
关系数据模型及其运算基础.ppt_第3页
第3页 / 共29页
点击查看更多>>
资源描述
补充 关系数据模型及其运算基础 4 1关系模型的基本概念 关系操作是集合操作 操作的对象是集合 操作的结果也是集合 因此 关系操作的基础是集合代数 一 笛卡尔积 CartesianProduct 1 定义设D1 D2 Dn都是有限集合 则D1 D2 Dn上的笛卡尔积为D1 D2 Dn d1 d2 dn di Di i 1 2 n 2 举例例4 1设有两个集合如下 职工 张三 李四 王五 项目 管理 程控 数控 则 职工 项目上的笛卡尔积为职工 项目 张三 管理 张三 程控 张三 数控 李四 管理 李四 程控 李四 数控 王五 管理 王五 程控 王五 数控 笛卡尔积实际上就是一张二维表 上例的笛卡尔积 职工 项目 的对应二维表如表 4 1所示 表4 1二维表 4 2关系模式 在1 2 3节中已介绍过 一个关系的关系模式是该关系的关系名及其全部属性名的集合 一般表示为关系名 属性名1 属性名2 属性名n 可见 关系是值 而关系模式是型 是对关系的描述 关系模式是稳定的 关系是变化的 关系是某一时刻关系模式的内容 关系模式常简称为关系 但上述关系模式的定义还不全面 虽然一般情况下都是这样做的 完整的关系模式定义为R U D dom F 其中 R为关系名 U为该关系所有属性名的集合 D为属性组U中属性所来自的域的集合 dom为属性向域映象的集合 F为属性间数据依赖关系的集合 4 3关系数据库 一个应用范围内 所有关系的集合就形成了一个关系数据库 对关系数据库的描述称为关系数据库模式 也称为关系数据库的型 一个关系数据库模式包括 全部域的定义及在这些域上定义的全部关系模式 全部关系模式在某一时刻的值的集合 全部关系的集合 为关系数据库的值 简称为关系数据库 4 4关系代数 关系代数与任何实际RDBMS所提供的实际语言并不完全相同 关系代数是一种抽象的查询语言 但它是评估实际语言中查询能力的标准 关系代数中给出的功能在任何实际语言中应该都能实现 即使间接地实现也行 关系代数是通过对关系的运算来表达查询的 它的运算对象是关系 运算结果也是 关系 关系代数的运算可分为两类 1 传统的集合运算 并 差 交和广义笛卡尔积 其运算符号分别为 和 2 特殊的关系运算 投影 选择 连接和除 其运算符分别为 和 在两类集合运算中 还将用到两类辅助操作符 1 比较运算符 2 逻辑运算符 或 与 非 4 4 1传统的集合运算传统的集合运算是二目运算 设关系R和S的目都是n 都有n个属性 且相应属性取自同一域 则 1 关系R和S的并 Union 为R S其含义为 任取元组t 当且仅当t属于R或t属于S时 t属于R S R S是一个n目关系 2 R和S的差 Difference 为R S其含义为 当且仅当t属于R并且不属于S时 t属于R S R S也是一个n目关系 3 R和S的交 Intersection 为R S其含义为 当且仅当t既属于R又属于S时 t R S 4 广义笛卡尔积 ExtendedCartesianProduct 广义笛卡尔积不要求参加运算的两个关系具有相同的目 自然也就不要求来自同样的域 设R为n目关系 S为m目关系 则R和S的广义笛卡尔积为R S trts表示由两个元组tr和ts前后有序连接而成的一个元组 任取元组tr和ts 当且仅当tr属于R且ts属于S时 tr和ts的有序连接即为R S的一个元组 R和S的广义笛卡尔积是一个 n m 目的关系 其中任何一个元组的前n列是关系R的一个元组 后m列是关系S的一个元组 若R有K1个元组 S有K2个元组 则R S有K1 K2个元组 实际操作时 可从R的第一个元组开始 依次与S的每一个元组组合 然后 对R的下一个元组进行同样的操作 直至R的最后一个元组也进行完同样的操作为止 即可得到R S的全部元组 例4 2表4 2给出了两个关系R和S 以及它们进行并 差 交和笛卡尔积后的结果关系 表4 2关系R S及它们的传统集合结果 4 4 2专门的关系运算专门的关系运算包括投影 选择 连接 自然连接和除等 投影和选择是一元操作 其他是二元操作 一 投影 Projection 设中的所有属性都是关系R的属性 则R在上的投影为R中各元组只保留在上的诸分量后形成的新关系 但重复元组只能保留一个 记为 R 投影的实际操作方法为 从R中逐次取出一个元组 首先 去掉不在上的诸属性值 接着 按的次序重新排列剩下各分量后 作为一个新元组送入投影结果 但若投影结果关系中已有此元组 则必须舍弃之 投影不仅仅取消了原关系中的某些列 还可能会去掉某些元组 有重复时 还可以改变属性列的排列次序 例如 Dno Title Employee 即表2 1中表 一 所示的职工表在部门号和职称两属性列上的投影 结果见表4 3 表4 3职工表在部门号和职称上的投影 投影表达式中 可用属性在原关系中的序号代替属性名 如上述投影表达式等价于 7 6 Employee 二 选择 Selection 选择运算是在一个关系中 选取符合某给定条件的全体元组 生成的新关系 记为 关系名 是个布尔表达式 例如 Dno 01 5 1 Employee 表示从职工表 表2 1的表 一 中选取部门 且第 列婚否 的元组组成结果关系 结果关系的所有属性名都是原关系的属性名 结果关系中各元组都是原关系中的元组 不难证明 下面等式是成立的 R R R 三 连接 Join 连接也称 连接 是从两个关系的广义笛卡尔积中选取满足某规定条件的全体元组 形成一个新的关系 记为 四 等值连接 Equivalencejoin 等值连接属于连接 当一个连接表达式中 所有的 i都是 符时 则称此连接为等值连接 等值连接是较常用的连接 五 自然连接 Naturaljoin 1 自然连接的由来设关系R和S共有m个相同的属性名 把这m个相同属性名的集合记为A 则R和S在属性组A上的等值连接为 2 自然连接设关系R和S共有m个相同的属性名 则R和S在这m个属性上进行等值连接后 又删除m个冗余列 所得结果称为R和S的自然连接 记为 自然连接与等值连接的差别在于 1 自然连接要求相等的分量必须有共同属性名 等值连接则不要求 2 自然连接要求把重复属性名去掉 等值连接却不这样做 可以证明 关系代数操作集 U 是完备的操作集 任何其他关系代数操作都可以用这五种操作的组合来表示 任何一个DBMS 只要它能完成这五种操作 则称它是关系完备的 relationallycomplete 六 除 Division 1 除法的简单形式设关系S的属性是关系R属性的一部分 则R S为这样一个关系 1 此关系的属性是由属于R但不属于S的所有属性组成 2 R S的任一元组都是R中某元组的一部分 但必须符合下列要求 即任取属于R S的一个元组t 则t与S的任一元组连串后 都为R中原有的一个元组 例4 3表4 4给出了两个关系 学生选课和课程 以及学生选课 课程的结果 表4 4两个关系的除法运算 2 除法的一般形式设有关系R X Y 和S Y Z 其中X Y和Z是关系的属性 或属性组 则R X Y S Y Z R X Y Y S 而 Y S 的属性是关系R属性的一部分 可用除法的简单形式进行处理 七 举例表4 5给出了两个关系以及它们之间专门的关系运算 表4 5两个关系间专门的关系运算
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!