数据库学习笔记06——关系操作

本文详细介绍了数据库中的关系操作,包括查询、插入、删除和修改。重点阐述了关系模型中的基本操作,如选择、投影、并、差、笛卡尔积,并解析了关系代数,讨论了传统集合运算和专门的关系运算,如连接、除运算。此外,还提到了结构化查询语言SQL在关系数据库管理中的重要地位。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

关系操作

关系模型给出了关系操作的能力说明,但没有给出具体语法要求,不同的关系数据库管理系统可以定义和开发不同的语言来实现这些操作。

基本的关系操作

  • 关系模型中常用的关系操作包括查询(query)操作和插入(insert)、删除(delete)、修改(update)操作两大部分。
  • 其中最主要的部分是查询操作,查询操作可分为选择(select)、投影(project)、连接(join)、除(divide)、并(union)、差(except)、交(intersection)、笛卡尔积等。
    • 选择、投影、并、差、笛卡尔积是五中基本操作,其他操作可以用基本操作定义和导出。
  • 关系操作的特点是集合操作方式,即操作的对象和结果都是集合

关系数据语言的分类

  • 关系代数语言
    • 抽象的查询语言,用对关系的运算来表达查询要求。
  • 关系演算语言
    • 抽象的查询语言,用谓词来表达查询要求。
    • 元组关系演算语言。
    • 域关系演算语言。
  • 结构化查询语言(Structured Query Lunguage, SQL)
    • 是关系数据库的标准语言。
    • 不仅具有丰富的查询功能,而且具有数据定义和控制功能。
    • 具有关系代数和关系演算双重特点的语言。

关系代数

运算对象、运算符、运算结果是运算的三大要素。

关系代数的运算按运算符的不同可分为传统的集合运算专门的关系运算两类。

  • 传统的集合运算将关系看为元组的集合,运算以行的角度来进行。
  • 专门的关系运算不仅涉及行,而且涉及列。

传统的集合运算

是二目运算,包括并、差、交、笛卡尔积4中运算。

设关系R和关系S具有相同的目n(即两个关系都具有n个属性),且相应的属性取自同一个域,t是元组变量, t ∈ R t \in R tR表示t是R的一个元组。

  1. 并(union),关系R与关系S的并记作
    • R ∪ S = { t ∣ t ∈ R ∨ t ∈ s } R\cup S=\{t|t\in R \vee t\in s\} RS={ ttRts}
    • 其结果关系为n目关系,由属于R或属于S的元组构成。
  2. 差(except),关系R与关系S的差记作
    • R − S = { t ∣ t ∈ R ∧ t ∈ S } R-S=\{t|t\in R\wedge t\in S\} RS={ ttRtS}
    • 其结果关系为n目关系,由属于R而不属于S的所有元组组成。
  3. 交(intersection),关系R与关系S的交记作
    • R ∩ S { t ∣ t ∈ R ∨ t ∈ S } R\cap S\{t|t\in R \vee t\in S\} RS{ ttRtS}
    • 其结果关系为n目关系,由既属于R又属于S的元组组成。
    • 关系的交可以用差来表示,如 R ∩ S = R − ( R − S ) R\cap S = R-(R-S) RS=R(RS)
  4. 笛卡尔积(cartesian product),两个分别为n目和m目的关系R和S的笛卡尔积是一个(n+m)列的元组的集合,记为
    • R × S = { t r t s ⌢ ∣ t r ∈ R ∧ t s ∈ S } R\times S=\{ \stackrel\frown{t_rt_s}|t_r\in R\wedge t_s\in S \} R×S={ trtstrRtsS}
    • 元组的前n列是关系R的一个元组,后m列是关系S的一个元组。
    • 若R有 k 1 k_1 k1个元组,S有 k 2 k_2 k2个元组,则关系R和关系S的笛卡尔积有 k 1 × k 2 k_1 \times k_2 k1×k2个元组。
      在这里插入图片描述

专门的关系运算

专门的关系运算包括选择、投影、连接、除运算等,为了便于叙述,引入下列记号。
在这里插入图片描述

  1. 设关系模式为 R ( A 1 , A 1 , . . . , A n ) R(A_1, A_1, ..., A_n) R(A
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值