数据库复习——*关系演算(元祖演算与域演算)

前言

非重点的关系演算

正文

元祖演算

关系元组演算是以元组变量作为谓词变量的基本对象

  1. 基本形式
    { t | P(t) }
    P(t)可以是如下三种形式之一的原子公式:
  • t ∈ R
    t 是关系 R 中的一个元组,例如: { t | t∈ Student}
  • s[A] θ c
    元组分量s[A]与常量 c 之间满足比较关系.
    θ:比较运算符,<, <=,=, <>,>, >=
    例如: { t | t∈Rt [Sage ] <= 19∧ t [Sname ] = ‘张三’ }
  • s[A] θ u[B]
    s[A] 与 u[B] 为元组分量,A和B分别是某些关系的属性,他们之间满足比较关系θ.
    例如: { t | t∈Student∧ ∃ (u ∈Student) ( t [Sage ] > u [Sage ] ) } “检索出年龄不是最小的所有同学”
  1. P(t)运算符优先次序
    数据库复习——*关系演算(元祖演算与域演算)

  2. 存在量词∃与全称量词∀
    数据库复习——*关系演算(元祖演算与域演算)
    数据库复习——*关系演算(元祖演算与域演算)

域演算

关系域演算公式的基本形式: { < x1 , x2 , … , xn > | P ( x1 , x2 , … , xn ) }其中, xi 代表域变量或常量, P为以xi为变量的公式。公式P可以递归地进行构造:
三种形式的原子公式是公式

  • < x1 , x2 , … , xn > ∈ R。 其中xi 代表域变量或常量, 表示由域变
    量构成的< x1 , x2 , … , xn >是属于关系R的
  • x θ c。 其中,域变量x与常量c之间满足比较关系θ 。θ:比较运算
    符 <, <=, =, <>, >, >=
  • x θ y。其中,域变量x与域变量y之间满足比较关系θ
    例子
    数据库复习——*关系演算(元祖演算与域演算)
    数据库复习——*关系演算(元祖演算与域演算)

QBE语言

  1. 基本部分
  • 关系名区:用于书写欲待查询的关系名
  • 属性名区:用于显示对应关系名区关系的所有属性名
  • 操作命令区:用于书写查询操作的命令
  • 查询条件区:用于书写查询条件

数据库复习——*关系演算(元祖演算与域演算)

  1. QBE的操作命令
    更新操作
    数据库复习——*关系演算(元祖演算与域演算)
    查询操作
    数据库复习——*关系演算(元祖演算与域演算)
  • QBE的查询条件----不同属性上的与条件
    QBE不同属性上的与条件可以写在同一行中
    数据库复习——*关系演算(元祖演算与域演算)

  • QBE的查询条件----示例元素与投影
    条件 θ 参量中的参量也可以是域变量,用任何一个值(不必是结果中
    的值)带有下划线表示,被称为示例元素. 示例元素下划线上面的值
    起作用
    ,被当作域变量名称来对待,只用于占位或是连接条件。不带下
    划线的则是构成实际条件一部分的值。
    数据库复习——*关系演算(元祖演算与域演算)

  • QBE的查询条件----用示例元素实现‘与’运算和‘或’运算
    当书写 ∪ 条件(或运算)时,可以采用在多行书写,然后在打印命令后使用不
    同的示例元素来表征,如下图, 一行写为P.X, 一行使用P.Y。
    数据库复习——*关系演算(元祖演算与域演算)
    如果一批 ∩ 条件分多行书写,则相互存在∩关系的行要采用相同的示例元素
    数据库复习——*关系演算(元祖演算与域演算)

  • QBE的查询条件----相当于括号的条件表示
    数据库复习——*关系演算(元祖演算与域演算)

  • QBE的查询条件----用示例元素实现多个表的连接
    当检索涉及多个表时,可利用同一连接条件使用相同的示例元素,来实现多个表的连接.
    数据库复习——*关系演算(元祖演算与域演算)

总结

数据库复习——*关系演算(元祖演算与域演算)数据库复习——*关系演算(元祖演算与域演算)