数据库系统2-4:传统集合运算

文章作者 100test 发表时间 2007:03:10 18:33:04
来源 100Test.Com百考试题网


计算机等级考试训练软件《百宝箱》

  数据操纵语言是用户用来操作数据库的手段,通常包括查询语句和更新语句两部分。
  关系操作能力通常用代数方式或逻辑方式表示,分别称为关系代数和关系演算。用关系的运算来表达查询的方式称为关系代数。用谓词来表达查询要求的方式称为关系演算。
  关系代数的运算分为传统集合运算和专门关系运算两类。传统的集合运算包括并、交、差和广义笛卡儿积,专门关系运算包括选择、投影、连接和商操作。其中并、差、投影、笛卡儿积和选择五种操作为基本操作,而其它操作如交、连接、商均可以用这五个基本操作表示。
关系代数的运算符有四种类型:

         

 
  例如关系如下:
     


  属性组X为学号和姓名,属性组Z为课程名称和成绩。当X的值 x={01120101, 李明}时,x在关系中的象集Zx={(数据结构,80),(C语言,85),(数据库系统概论,90)}


  

  传统集合运算是二目运算,包括并、交、差、笛卡儿积四种运算。关系的集合运算要求参加运算的关系必须具有相同的目(即关系的属性个数相同),且相应属性取自同一个域。
  (1) 并(Union)
  设R和S都是n目关系,而且两者各对应属性的数据类型相同,则R和S的并定义为:   R∪S={t|t?Rút?S}
  R∪S的结果仍为n目关系,由属于R或属于S的元组组成。
  (2) 交(Intersection)
  设R和S都是n目关系,而且两者各对应属性的数据类型相同,则R和S的交定义为: R∩S={t|t?Rùt?S}=R-(R-S)
  R∩S的结果仍为n目关系,由既属于R又属于S的元组组成。
  (3) 差(Difference)
  设R和S都是n目关系,而且两者各对应属性的数据类型相同,则R和S的差定义为: R-S={t|t?Rùt?S}
R-S的结果仍为n目关系,由属于R而不属于S的元组组成。
(4) 广义笛卡儿积(Extended Cartesian Product)
设R是n目关系,S是m目关系,R和S的笛卡儿积定义为:
R′S={ tr? ts | tr?Rù ts ?S}
R′S 是一个(n m)目关系,前n列是关系R的属性,后m列是关系S的属性。
每个元组的前n个属性是关系R的一个元组,后m个属性是关系S的一个元组。
若关系R有p个元组,关系S有q个元组,关系R′S 有p′q 个元组,且每个元组的属性为(n m)个。
  例如 设有关系R和S 如下图,求R∪S、R∩S、R-S、R′S。



相关文章


计算机等级考试四级笔试试卷及答案五之二
数据库系统2-3:自定义完整性约束
数据库系统2-4:传统集合运算
计算机等级考试四级笔试试卷及答案五之一
计算机等级考试四级笔试试卷及答案六之四
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛