精华内容
下载资源
问答
  • 关系代数基本运算

    千次阅读 2016-02-16 15:07:14
    前言:关系代数名称的由来是因为其中含有操作符和操作数,操作数为表,操作符为交、并等。关系代数有分为基于集合的关系代数...此计算需要使得运算的两个表具有相同的字段。例如S1-S2是在S1中而不在S2中的记录的集合


    前言:关系代数名称的由来是因为其中含有操作符和操作数,操作数为表,操作符为交、并等。关系代数有分为基于集合的关系代数和基于包的关系代数;关系代数的基本操作有:并、差、除、选择、投影、笛卡尔积等。



    1、差


      定义:差即Difference,用符号-表示,表示两个表中不一样的部分。此种计算需要使得运算的两个表具有相同的字段。例如S1-S2是在S1中而不在S2中的记录的集合:


            



    2、投影


      定义:从一个关系里面抽取指明的属性(列)。投影运算符是π,该运算作用于关系R将产生一个新关系S,S只具有R的某几个属性列。

      投影运算的一般表达式为:S = πA1, A2, … , An(R)

      S是投影运算产生的新关系,它只具有R的属性A1, A2, … , An所对应的列。

      例如:

        对于关系:


                


        进行投影运算:πStudentNo, StudentName(Student) 结果为:


                    



    3、选择


      定义:从关系里面抽取出满足给定限制条件的记录。

      即:投影是获得表中的列,而选择是获得表中的行。



    4、除


      定义:除运算是同时从关系的水平方向和垂直方向进行运算。例如给定关系R(X,Y)和S(Y,Z),X、Y、Z为属性组。R÷S应当满足元组在X上的分量值x的象集y包含关系S在属性Y上投影的集合。

      其形式定义为:


           


      例如:


                     


      找出关系R和关系S中相同的属性,即Y属性。在关系S中对Y做投影,得到:


                          


      被除关系R中与S中不相同的属性列是X,关系在属性X上做取消重复值的投影为{X1,X2};根据关系R的记录,可以得到与X1值有关的记录,如图3所示;与X2有关的记录,如图4所示:


                    


      得出结论:R÷S其实就是判断关系R中X各个值的像集Y是否包含关系S中属性Y的所有值。可知:X1的像集只有Y1,不能包含关系S中属性Y的所有值,所以排除掉X1;

      而X2的像集包含了关系S中属性Y的所有值,所以R÷S的最终结果就是X2 :


                         



    5、笛卡尔积


      计算两个关系的笛卡尔积。两个关系R和S的笛卡尔积记作R×S,它的关系模式属性是R和S的模式的并集。R×S是把R和S的元组以所有可能的方式组合起来,因此,R×S拥有的元组数量应该是R的元组数与S的元组数的乘积。

      例如:


                





    展开全文
  • 关系代数是一抽象的查询语言,用对关系运算来表达查询,作为研究关系数据语言的数学工具。 基本关系代数算法: 传统的集合运算:并、交、差、广义笛卡尔积; 专门的集合运算:选择、投影、象集、连接(等值...

    关系代数是一种抽象的查询语言,用对关系的运算来表达查询,作为研究关系数据语言的数学工具。1

    基本的关系代数算法

    传统的集合运算

    ∪ \cup

    1. 要求:参与并运算的两张关系表必须具有相同的属性(列名);
    2. 运算方法:选取R、S关系表中的所有元组合并,建立新表;
    3. 表达式:
      R ∪ S = { i ∣ i ∈ R ∨ i ∈ S } . R \cup S = \{ i|i \in R \vee i \in S\}. RS={iiRiS}.
      RcupS

    ∩ \cap

    1. 要求:参与交运算的两张关系表必须具有相同的属性(列名);
    2. 运算方法:选取R、S关系表中的所有相同元组,建立新表;
    3. 表达式:
      R ∩ S = { i ∣ i ∈ R ∧ i ∈ S } . R \cap S = \{ i | i \in R \wedge i \in S \}. RS={iiRiS}.
      RcapS

    − -

    1. 要求:参与交运算的两张关系表必须具有相同的属性(列名);
    2. 运算方法:选取R表中与S表中任意元组不同的元组,建立新表;
    3. 表达式:
      R − S = { i ∣ i ∈ R ∧ i ∉ S } . R - S = \{ i | i \in R \wedge i \notin S \}. RS={iiRi/S}.
      R-S

    笛卡尔积(广义) × \times ×

    1. 要求:R表和S表可以拥有不同的属性(列);
    2. 运算方法:R的每一行元组后面都要跟随S的所有元组;
    3. 表达式:
      R × S = { i R i S ^ ∣ i R ∈ R ∧ i S ∈ S } . R \times S = \{ \widehat{i_R i_S} | i_R \in R \wedge i_S \in S \}. R×S={iRiS iRRiSS}.
      RtimesS

    专门的集合运算

    选择 σ \sigma σ

    1. 要求:拥有一个基于R表中属性A(列A)的逻辑表达式F;
    2. 运算方法:从R表中选择符合逻辑表达式F的元组(行),建立新表;
    3. 表达式:
      F ( i ) = i [ A ]   θ   a ( θ 为 比 较 运 算 符 , 可 为 > , < , ≥ , ≤ , = 或 ≠ ) , σ F ( R ) = { i ∣ i ∈ R ∧ F ( i ) } . F(i)=i[A]\,\theta\,a \\ (\theta 为比较运算符,可为>,<,\geq,\leq,=或\neq),\\ \sigma_F(R)= \{ i | i \in R \wedge F(i)\}. F(i)=i[A]θa(θ,>,<,,,==),σF(R)={iiRF(i)}.
      Select

    投影 π \pi π

    1. 要求:所选的属性组A,B必须来源于R表的属性(列名);
    2. 运算方法:从R表中选择指定的属性组(列),建立新表;
    3. 表达式:
      π A , B ( R ) = { i [ A , B ] ∣ i ∈ R } . \pi_{A,B}(R)= \{ i[A,B] | i \in R \}. πA,B(R)={i[A,B]iR}.
      Project

    象集(选择+投影)

    1. 要求:所选的具体属性值a必须来源于R表中存在的属性(列);
    2. 运算方法:从R表中选择指定的属性值a所在的行,投影出剩下的其他属性Z,建立新表;
    3. 表达式:
      π Z ( σ A = a ( R ) ) = { i [ Z ] ∣ i ∈ R ∧ i [ A ] = a } . \pi_{Z}(\sigma_{A=a}(R))= \{ i[Z] | i \in R \wedge i[A]=a \}. πZ(σA=a(R))={i[Z]iRi[A]=a}.
      Image

    连接 ⋈ \bowtie

    1. 要求:A、B属性组(列)必须分别为R表和S表中的属性,且具有可比性(如皆为日期属性、数值属性等);
    2. 运算方法:先使用广义笛卡尔积(见上文)算出R × \times ×S,再在R × \times ×S中选取符合逻辑表达式F的元组,建立新表;
    3. 表达式:
      F ( i ) = i R [ A ]   θ   i S [ B ] ( θ 为 比 较 运 算 符 , 可 为 > , < , ≥ , ≤ , = 或 ≠ ) , R ⋈ F S = { i R i S ^ ∣ i R ∈ R ∧ i S ∈ S ∧ F ( i ) } . F(i)=i_R[A] \,\theta\, i_S[B]\\ (\theta 为比较运算符,可为>,<,\geq,\leq,=或\neq),\\ R\mathop{\bowtie}\limits_{F} S=\{\widehat{i_Ri_S} | i_R \in R \wedge i_S \in S \wedge F(i) \}. F(i)=iR[A]θiS[B](θ,>,<,,,==),RFS={iRiS iRRiSSF(i)}.
      Connect

    等值连接

    1. 要求:在满足连接要求的前提下,逻辑表达式F中的   θ   \,\theta\, θ为“   =   \,=\, =”;
    2. 运算方法:先使用广义笛卡尔积(见上文)算出R × \times ×S,再在R × \times ×S中选取表R的属性A与表S的属性B值相等的元组,建立新表;
    3. 表达式:
      R ⋈ A = B S = { i R i S ^ ∣ i R ∈ R ∧ i S ∈ S ∧ i R [ A ] = i S [ B ] } . R\mathop{\bowtie}\limits_{A = B} S=\{\widehat{i_Ri_S} | i_R \in R \wedge i_S \in S \wedge i_R[A] = i_S[B] \}. RA=BS={iRiS iRRiSSiR[A]=iS[B]}.
      eqConnect

    自然连接

    1. 要求:在满足连接要求的前提下,R表和S表中必须要有至少一个相同的属性C(列C);
    2. 运算方法:先使用广义笛卡尔积(见上文)算出R × \times ×S(即下图中右侧较大的整个表),再在R × \times ×S中选取两表中属性C值 相等 的元组,建立新表,并删除重复的相同属性组,仅保留一组即可
    3. 表达式:
      R ⋈ S = { i R i S ^ ∣ i R ∈ R ∧ i S ∈ S ∧ i R [ A ] = i S [ A ] } . R\bowtie S=\{\widehat{i_Ri_S} | i_R \in R \wedge i_S \in S \wedge i_R[A] = i_S[A] \}. RS={iRiS iRRiSSiR[A]=iS[A]}.naturalConnect

    ÷ \div ÷

    1. 要求:在满足连接要求的前提下,R表和S表中必须要有相同的属性A(列A);
    2. 运算方法:寻找S表中与R表相同的属性组X(列),在R表中寻找匹配S表属性的元组,选取含有S表中属性组X的所有属性的R表元组,再对选出的元组做关于属性X的象集(见上文)得到;
      *具体算法建议参考 关系代数运算——除法运算_Jack浩2
    3. 表达式:
      R ÷ S = { i R ( X ) ∣ i R ∈ R ∧ π Y ( S ) ⊆ Y X } ( Y X = π Z ( σ X = i R [ X ] ( R ) ) ) . R\div S=\{i_R(X) | i_R \in R \wedge \pi_Y(S) \subseteq Y_X \}\\(Y_X=\pi_{Z}(\sigma_{X=i_R[X]}(R))). R÷S={iR(X)iRRπY(S)YX}(YX=πZ(σX=iR[X](R))).
      div

    以上大部分整理 来源于《数据库系统概论(第5版)》高等教育出版社3,如有问题请不吝赐教,谢谢

    Refences


    1. 关系代数_百度百科 ↩︎

    2. 关系代数运算——除法运算_Jack浩 ↩︎

    3. 《数据库系统概论(第5版)》_高等教育出版社 ↩︎

    展开全文
  • 2.关系运算功能 主要包括:大于、大等于、小于、小等于、等于、不等于。 3. 逻辑运算功能 主要包括:与、或、非。 4.位运算功能 主要包括:按位与、按位或、按位异或、按位取反、左移和右移。 5.进制...
  • 并、差、笛卡尔积、投影和选择5种运算基本运算。其他三种运算,即交、链接和除,均可以用这5种运算来表达

    并、差、笛卡尔积、投影和选择5种运算为基本的运算。其他三种运算,即交、链接和除,均可以用这5种运算来表达

    展开全文
  • 【数据库】关系代数基本运算

    万次阅读 多人点赞 2016-11-01 22:35:35
    前言    关系代数是以关系运算对象的一组高级运算的集合。由于关系定义为属性个数相同的元组的集合,因此集合代数的操作就可以引入到关系代数中。关系代数中的操作可以分为...五个基本关系代数操作    ...

    前言

     

           关系代数是以关系为运算对象的一组高级运算的集合。由于关系定义为属性个数相同的元组的集合,因此集合代数的操作就可以引入到关系代数中。关系代数中的操作可以分为两类:传统的关系操作,并、差、交、笛卡尔积(乘)、笛卡尔积的逆运算(除);扩充的关系操作,对关系进行垂直分割(投影)、水平分割(选择)、关系的结合(连接、自然连接)等。

     

    五个基本的关系代数操作

     

           五个关系代数操作分别是:并、差、笛卡尔积、投影和选择。

           它们组成了关系代数完备的操作集。例子,分析下面两个关系:

     

     

    关系代数操作的结果

     

      (a)R∪S   并 (b)R-S    差  (c)R×S   笛卡尔积  (d)πC,A(R)  投影  (e)σB>’4’ (R)  选择

     

     

           说明:笛卡尔积,若R有m个元组,S有n个元组,则R×S有m×n个元组。投影,C和A为属性名,说明要选择的列。选择B>'4',即选择语句的条件,对关系做水平分割,选择符合条件的元组。

     

    连接

     

           连接是从关系R和S的笛卡尔积中选取属性值满足某一个操作的元组。

           下面的例子同σ2=4 (R×S)。

     

    自然连接

     

     

    实例

     

           在关系代数运算中,把由五个基本操作经过有限次复合的式子称为关系代数表达式。这种表达式的运算结果仍是一个关系。我们可以用关系代数表达式表示各种数据查询操作。

    【例4.5】对于下面的教学数据库中的四个关系,为方便起见,其名称简化为T、C、S和SC:

    下面用关系代数表达式表达每个查询语句

    1)检索学习课程号为C2课程的学生学号和姓名

    由于这个查询涉及到两个关系S与SC,因此先要对这两个关系进行自然连接操作,然后再执行选择和投影操作。

    展开全文
  • 关系代数运算——(软考

    千次阅读 热门讨论 2015-10-09 21:39:35
     关系代数:是一抽象的查询语言,用对关系运算来表达 查询。关系代数运算的是关系运算结果亦是关系关系代数的基本关系包括:并、交、差、笛卡尔积、选择、投影、连接、除法运算。由于并、交、差运算很简单...
  • 文章目录三种方式实现 Python 中的集合的交、并、补运算一 背景二 实践过程2.1 通过 Python 的推导式来实现2.2 通过 Python 对集合的内置方法来实现2.3 通过 Python 按位运算来实现 总结 三种方式实现 Python 中...
  • 关系代数运算

    千次阅读 2019-02-01 15:55:18
    关系运算的参与对象是关系,运算后结果也是关系。在数据库中,关系就是一张张的表。在离散数学中,关系是做为一个个的集合来进行运算的。 代数运算的分类: 传统的集合运算:并、差、交、笛卡儿积、笛卡儿积的逆...
  • 数据库原理--关系代数之基本运算

    千次阅读 2020-03-08 21:09:23
    本笔记仅仅作为课堂笔记,方便自己参考。因为是学生,对知识点的理解多有不足之处,希望多多包涵。 关系代数 关系代数语言是一抽象的查询语言,通过对关系...2.专门的关系运算:选择、投影、连接、除 运算符 ...
  • 小插曲:小编在学习计算机二级的时候,苦于关系代数的关系运算理解,在网上百度很多的资源,大都是概念,而且是文本形式呈现的。个人喜好图文形式的理解,因此将做的比较好的ppt做成帖子供大家参考,如有错误,请...
  • 2.逻辑运算:在逻辑代数中,有与、或、非三种基本逻辑运算。表示逻辑运算的方法有多种,如语句描述、逻辑代数式、真值表、卡诺图等。 3.逻辑函数:逻辑函数是由逻辑变量、常量通过运算符连接起来的代数式。同样,...
  • 一、算术运算 1、+ 加 expr求值操作 # 定义两个变量 a=6 b=4 # 加法 expr求值 value=`expr $a + $b` echo "$a+$b=$value" 输出:6+4=10 注:不是单引号 而是斜撇 键位在数字1的左边 若为单引号会输出1+2=expr 1 + 2...
  • 关系代数的基本运算

    千次阅读 2014-09-04 09:21:12
    关系代数是以关系
  • 关系代数和关系运算

    千次阅读 2019-08-23 14:36:40
    查询语言 用户用来从数据库中请求获取信息的语言 “纯”查询语言(奠定了...六个基本运算 select 选择 project 投影 union 并 set difference 差(合集差) cartesian product 笛卡尔积 rename 更名(重命...
  • 算术运算 算术运算:用于各类数值运算.包括加(+)、减(-)、乘(*)、除(/)、求余(或称模...其中加减为一级运算,乘除为二级运算,乘方、开方为运算。在一道算式中,如果有几级运算存在,则应先进行高级运算,再进行...
  • 关系代数运算之连接运算

    万次阅读 多人点赞 2019-04-20 18:28:17
    1.关于连接的理解:连接也称为θ连接,关系R与关系S的连接运算是从两个关系的笛卡尔积中选取属性间满足一定条件的元组形成一个新的连接。这个条件为θ(比较运算符,如>、<、=)。 2.自然连接:是一特殊的...
  • 关系运算

    千次阅读 热门讨论 2014-09-28 17:11:10
    关系代数的五个基本操作:  (1)并(∪):两个关系需有相同的关系模式,并的对象是元组,由两个关系所有元组构成。  RUS≡{t| t∈R ∨t∈S}  (2) 差(-):同样,两个关系有相同的模式,R和S的差是由属于R但...
  •   数据库系统学习第7篇:关系代数基本运算及附加运算。参考书籍:数据库系统概念。 基本运算   基本运算有6,如下所示: 选择运算   选择运算的目的是 选出满足给定谓词的元组,表示如下:   选择运算...
  • 关系代数中,个人觉得比较容易搞混的有这两个概念:传统集合运算和专门关系运算; 传统集合运算:并(∪)、交(∩)、差(—)、笛卡尔积(×); 专门关系运算:选择(σ)、投影(Π)、连接(∞)、除(÷); 传统的集合运算将...
  • 基本运算电路

    千次阅读 多人点赞 2019-07-06 12:42:01
    一、基本运算电路包括比例、加减、积分、微分、指数、对数等模拟运算电路。在运算电路中,以输入电压作为自变量,以输出电压作为函数,当输入电压变化时,输出电压将按一定的数学规律变化,即输出电压反应输入电压...
  • 其中加减为一级运算,乘除为二级运算,乘方、开方为运算。在一道算式中,如果有几级运算存在,则应先进行高级运算,再进行低一级的运算。如:3+22×4=3+4×4=3+16=19; 如果只存在同级运算;则按从左至右的顺序...
  • 关系代数运算——除法运算

    万次阅读 多人点赞 2015-09-11 19:20:20
     最近在复习数据库的一些基本知识,在学习关系代数运算的时候再次遇到了除法运算,记得当时自己在准备自学 考试的的时候就遇到过这个知识,当时就不太明白;因为当时我们需要复习的科目很多,所以就直接放弃这...
  • 关系数据库关系数据模型关系是一个数学概念。 当把关系的概念引入到数据库系统作为数据模型的数据结构时,既有所限定和也有所扩充。 关系的数学定义例: 课程={离散,C语言…..},学生={张三,李四…..} 笛卡儿积...
  • 数据库查询的基本运算关系代数

    千次阅读 2015-10-15 20:35:05
    1.关系属性的指定——投影运算 这个操作是对一个关系进行垂直分割,消去某些列,并重新安排列的顺序。 “п”为投影运算符,表示按照i1,i2,…,in的顺序从关系R中取出n列,并删除结果中的重复元组,组成一个新...
  •  集成运放是一个已经装配好的高增益直接耦合放大器,加接反馈网络以后,就组成了运算电路特点 运算电路的输入输出关系,仅仅决定于反馈网络;因此只要选取适当的反馈网络,就可以实现所需要的运算功能,如比例、加...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 315,814
精华内容 126,325
关键字:

关系运算的三种基本方式