第二部分关系数据库的操作_第1页
第二部分关系数据库的操作_第2页
第二部分关系数据库的操作_第3页
第二部分关系数据库的操作_第4页
第二部分关系数据库的操作_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二部分关系数据库的操作,第二部分 关系数据库的操作,关系的数学定义 关系的操作,第二部分关系数据库的操作,一个日常生活中的关系例子,某小区有2名男同志和3名女同志,把男人看成一个集合M,把女人看成一个集合W,如下: M=赵和平, 李振华; W=李小丽, 张小琴, 王丽娅。 若M集合和W集合存在着夫妻关系,则可能的夫妻关系如下: (赵和平,李小丽),(赵和平,张小琴),(赵和平,王丽娅),(李振华,李小丽),(李振华, 张小琴),(李振华,王丽娅) 在数学上把这种由两个或多个集合中的值的所有可能组合称“笛卡尔积”,本题的“笛卡尔积”可记为:MW。,第二部分关系数据库的操作,MW,W=小娟, 小

2、琴 笛卡尔积?,第二部分关系数据库的操作,几个概念,域 域(Domain)是值的集合。如:1到100之间的整数, Mary,Tom等都是域。 基数 域中元素的个数称为域的基数,如有下列集合: 单位人员的集合:D1=王小平, 张亚, 李军; 职称的集合: D2=教授,副教授,讲师,助教; 工龄的集合: D3=35,27,18。 其中 D1的基数是3,D2的基数是4,D3的基数是3。,性别的域? 基数?,第二部分关系数据库的操作,两个或多个集合中的值的所有可能组合,第二部分关系数据库的操作,笛卡儿积的基数?,若Di(i=1,2,n)为有限集,其基数为mi ( i=1,2,n),则笛卡儿积D1 D2

3、 . Dn的基数为:,元组数!,第二部分关系数据库的操作,关系的数学定义,R - 关系的名字 n - 关系的目或度。 R是D1 D2 . Dn 的 子集,关系是笛卡儿积的有限个子集,笛卡儿积D1D2 Dn的任意一个子集称为D1,D2, Dn上的一个n元关系 R( D1, D2, , Dn)表示关系,属性列数!,第二部分关系数据库的操作,【例】教师关系例,有以下三个域:D1=张正义,姚小丽,教师姓名集合; D2=男,女,教师性别集合; D3=21,24,教师年龄集合。求D1 D2 D3 。 解:笛卡尔积D1 D2 D3的值可用左表表示,实际的教师信息如右表,关系,真正的教师关系表,子集,第二部分

4、关系数据库的操作,要素一:关系的结构,关系数据结构:是一张二维的表,第二部分关系数据库的操作,关系的描述形式 关系名(属性1,属性2属性n) 学生表 (学号,姓名,性别,专业号,年龄),关系:R( D1, D2, , Dn),第二部分关系数据库的操作,要素三:关系的操作,关系数据操作有两个基本特点: 一次操作可以存取多个元组 语言的非过程化(只告诉DBMS干啥),第二部分关系数据库的操作,关系代数,基本概念和符号 传统的集合运算 专门的关系运算 基本运算及变换,第二部分关系数据库的操作,关系代数的概念,关系代数是一种查询语言,是操纵语言的传统表达方式,用对关系的运算表达查询。 关系代数的运算对

5、象是关系,关系代数的运算结果也是关系 与一般的运算一样,运算对象、运算符和运算结果也是关系代数的三个要素 运算符包括四类:集合运算符、专门的关系运算符、算术比较符、逻辑运算符,第二部分关系数据库的操作,关系代数的运算可以分为两大类,传统的集合运算 并运算(UNION) 交运算(INTERSECTION) 差运算(DIFFERENCE) 关系的笛卡尔积 专门的关系运算 选择(SELECT)运算 投影(PROJECTION)运算 联接运算(JOIN),第二部分关系数据库的操作,几个概念和专门的符号,元组的分量 元组的连串 元组中属性的映像集,第二部分关系数据库的操作,第二部分关系数据库的操作,设有

6、关系模式R (A1,A2,An) rR表示r是R的一个元组 r.A i或r A i表示r 这个元组中相应于属性A i的一个分量 例如,假设R是仓库关系, r =(WH1,北京,370)是仓库关系的一个元组,则rR ,r.仓库号或r 仓库号为WH1。,元组的分量,第二部分关系数据库的操作,设R为m元关系,S为n元关系,并且 r =(r1,r2,rm)R s=(s1,s2,sn)S 则 称为元组的连串。这是一个(m+n)元组,前m个分量为R中的一个m元组,后n个分量为S中的一个n元组。,元组的连串,第二部分关系数据库的操作,设有关系模式R(X,Y),其中X、Y可以是单个属性,也可以是属性集,定义当

7、X取值为x时, x在R中的映象集为:,元组中属性的映像集,第二部分关系数据库的操作,映像集的例子,X=E3 Yx ?,第二部分关系数据库的操作,传统的集合运算,并运算(UNION) 交运算(INTERSECTION) 差运算(DIFFERENCE) 关系的笛卡尔积,第二部分关系数据库的操作,并:RS=t|tRV tS,差:R-S=t|tR tS,交:RS=t|tR tS,笛卡尔积: RS=tr ts | tr R ts S,传统的集合运算,并运算,交运算,差运算,第二部分关系数据库的操作,举例:仓库-A ;仓库-B 的并、交、差运算示意,第二部分关系数据库的操作,仓库-A ;仓库-B 的广义笛

8、卡尔积?参考P46-47,思考题仓库-A ;仓库-B 的广义笛卡尔积,第二部分关系数据库的操作,选择(SELECT)运算 投影(PROJECTION)运算 联接运算(JOIN) 除运算(Division),专门的关系运算,第二部分关系数据库的操作,选择又称为限制,它是在R中选择满足给定条件的各元组-形成一个新的关系 F(R) =t|tR F(t)=“真” 其中R是关系名,是选择运算符,F是逻辑表达式,例1:要在学生基本信息中找出年龄小于24岁的所有学生数据。 年龄24(学生),选择(Selection),元组,第二部分关系数据库的操作,选择运算举例:,职工号=E3(订购单),订购单,从订购单关

9、系中选择职工号为“E3”的元组构成新的关系,第二部分关系数据库的操作,关系R上的投影是从R中选择出若干属性列组成新的关系.,例2.查询学生关系在学生姓名,所在专业两个属性上的投影. 姓名,专业号 ( 学生 ),A(R) =tA | tR,其中R是关系名,是投影运算符,A是被投影的属性或属性集。,投影(Projection),属性组,第二部分关系数据库的操作,投影运算举例:,订购单关系,选取职工号和供应商号两列构成新的关系,职工号,供应商号(订购单),第二部分关系数据库的操作,关系代数,连接(Jion),连接运算是将满足两个表之间运算关系的记录连接成一条记录,所有这样的记录构成新的表(连接运算的

10、结果)。连接运算可以表示为:,Ai是R中的属性,Bj是S中的属性,是关系(比较)运算符,连接的结果是一个广义笛卡儿乘积的子集,其中的元组满足Ai和Bj间的关系。当为“=”时,称为等值连接;为“”时,称为大于连接等等。,第二部分关系数据库的操作,自然连接,在连接运算中最常用的连接是自然连接。 自然连接运算一般表示为 :,其中Ai和Bj要出自同一个值域,并且在实际应用中这两个属性往往具有相同的属性名。,过程:计算笛卡尔积选择满足条件r Ai=s Bj 去掉重复值,第二部分关系数据库的操作,自然连接的例子,s Bj,r Ai,第二部分关系数据库的操作,综合运算实例,根据以上关系求出在上海工作的职工的

11、工资值都有哪些?,仓库,职工,关系代数语句为:,其它关系代数语句求解?,第二部分关系数据库的操作,查询过程示意,选择运算,自然连接运算,投影运算,第二部分关系数据库的操作,设有关系R(X,Y)和S(Y),其中X、Y可以是单个属性或属性集,则除法运算定义为:,除运算(Division),R(X,Y)是被除关系 S(Y)是除关系 商关系由R中某些X属性值构成,其中的任一X值所对应的一组Y值都包含除关系S。 除运算常用于至少查询或运算,第二部分关系数据库的操作,除运算的例子,它的含义是:至少向WH1、WH3、WH5供货的供应商号,第二部分关系数据库的操作,关系演算,元组关系演算语言ALPHA 域关系

12、演算语言QBE,第二部分关系数据库的操作,关系演算,元组关系演算语言,元组关系演算以元组变量为谓词变元的基本对象.,ALPHA语言主要有:GET,PUT,HOLD,UPDATE,DELETE,DROP,举例:检索操作:GET,查询所有被选修课程的课程号码 GET W (选修.课程号) 查询通控专业年龄小于20的学生的学号和年龄: GET W (学生.学号, 学生.年龄): 学生.专业号=TK 学生.年龄20,语句的基本格式: 操作语句 工作空间(表达式) : 操作条件,第二部分关系数据库的操作,域关系演算语言QBE(query by example),关系演算,域关系演算以元组变量的分量即域变量作为谓词变元的基本对象.,特点:高度过程化的基于屏幕表格的查询语言.,关系名,属性名,操作命令,元组属性值或查询条件,第二部分关系数据库的操作,关系演算,举例:检索操作,学生

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论