免费智能真题库 > 历年试卷 > 系统架构设计师 > 2017年下半年 系统架构设计师 上午试卷 综合知识
第11题      
知识点   元组演算
关键词   元组演算表达式   表达式   元组      分类   数据库系统       

 
给定元组演算表达式R*={t│(Эu)(R(t)∧S(u)∧t[3]<u[2])} ,若关系R、S如下图所示,则( )。
 
 
  A.  R*={(3,7,11),(5,9,13),(6,10,14)}
 
  B.  R*={(3,7,11),(4,5,6),(5,9,13),(6,10,14)}
 
  C.  R*={(1,2,3),(4,5,6),(7,8,9)}
 
  D.  R*={(1,2,3),(4,5,6),(7,8,9),(10,11,12)}
 
 
 

  相关试题     数据库系统    更多>  
 
  第10题    2017年下半年  
   42%
给定关系模式R(U,F),其中:属性集U={A1 ,A2,A3,A4,A5,A6},函数依赖集F={A1→A2, A1→A3, A3→A4, A1A5→A6}。..
  第6题    2018年下半年  
   28%
给定关系R(A,B,C,D,E)与S(A,B,C,F,G),那么与表达式等价的SQL语句如下:
SELECT(5)FROM R,S  WHERE(6);
  第5题    2011年下半年  
   46%
某企业工程项目管理数据库的部分关系模式如下所示,其中带实下划线的表示主键,虚下划线的表示外键。

其中供应关..
 


   知识点讲解    
   · 元组演算
 
       元组演算
        在元组演算中,元组演算表达式简称为元组表达式,其一般形式为{t|Pt)},其中,t是元组变量,表示一个元数固定的元组;P是公式,在数理逻辑中也称为谓词,也就是计算机语言中的条件表达式。{t|Pt)}表示满足公式P的所有元组t的集合。
        在元组表达式中,公式由原子公式组成。原子公式有下列3种形式。
        (1)Rs),其中R是关系名,s是元组变量。其含义是“s是关系R的一个元组”。
        (2)s[i]θu[j],其中su是元组变量,θ是算术比较运算符,s[i]和u[j]分别是s的第i个分量和u的第j个分量。原子公式s[i]θu[j]表示“元组s的第i个分量与元组u的第j个分量之间满足θ运算”。
        (3)s[i]θaaθu[j],其中的a为常量。其含义类似于(2)。
        在一个公式中,如果元组变量未用存在量词?或全称量词?等符号定义,那么称为自由元组变量,否则称为约束元组变量。公式的递归定义如下:
        (1)每个原子是一个公式。其中的元组变量是自由变量。
        (2)如果P1P2是公式,那么┓P1P1P2P1P2P1P2也是公式。
        (3)如果P1是公式,那么(?s)(P1)和(?s)(P1)也都是公式。
        (4)公式中各种运算符的优先级从高到低依次为:θ、?和?、┓、∨和∧、→。在公式外还可以加括号,以改变上述优先顺序。
        (5)公式只能由上述4种形式构成,除此之外构成的都不是公式。
        在元组演算的公式中,有下列4个等价的转换规则。
        (1)P1P2等价于┓(┓P1∨┓P2)。
        (2)P1P2等价于┓(┓P1∧┓P2)。
        (3)(?s)(P1)(s))等价于┓(?s)(┓P1s))。
        (?s)(P1s))等价于┓(?s)(┓P1s))。
        (4)P1P2等价于┓P1P2
        关系代数表达式可以转换为元组表达式,例如:
        (1)RS可用{t|Rt)∨St)}表示。
        (2)R-S可用{t|Rt)∧┓St)}表示。
        (3)R×S可用{t|(?u)(?v)(Ru)∧Sv)∧t[1]=u[1]∧…∧t[r]=u[r]∧t[r+1]=v[1]∧…∧t[r+s]=v[s])}表示,此处设Rr元,Ss元。
        (4)设投影操作是π2,3R),那么元组表达式可写成{t|(?u)(Ru)∧t[1]=u[2]∧t[2]=u[3])}。
        (5)σFR)可用{t|Rt)∧F′}表示,F′是F的等价表示形式。例如,σ2=′dR)可写成{t|(Rt)∧t[2]=′d′)。
        例如,设学生S、课程C、学生选课SC的关系模式分别为:S(Sno, Sname, Sage, Saddr)、C(Cno, Cname, Pcno),以及SC(Sno, Cno, Grade)。我们求与关系代数表达式等价的元组演算表达式。
        因为涉及3个关系模式SSCC,为了转换成等价的元组演算表达式,需要设置3个元组变量uvw,而且这3个元组变量只要用存在量词?限定就可以了。(?uSu)表示在S关系中存在一个元组,(?vSCv)表示在SC关系中存中一个元组,(?wCw)表示在C关系中存在一个元组。因为u[1]对应的是S.Sno,v[1]对应的是SC.Sno,v[2]对应的是SC.Cno,w[1]对应的是C.Cno,w[2]对应的是C.Cname,所以S.Sno=SC.Sno且SC.Cno=C.Cno且Cname=′data′等价于u[1]=v[1]∧v[2]=w[1]∧w[2]=′data′。因为本题的结果集为Sno、Sname和Grade,而u[1]对应的是S.Sno,u[2]对应的是S.Sname,v[3]对应的是SC.Grade,所以对属性列Sno、Sname和Grade的投影等价于t[1]=u[1]∧t[2]=u[2]∧t[3]=v[3]。因此,与等价的元组演算表达式为{(?u)(?v)(?wSu)∧SCv)∧Cw)∧u[1]=v[1]∧v[2]=w[1]∧w[2]=′data′∧t[1]=u[1]∧t[2]=u[2]∧t[3]=v[3]}。


 题号导航      2017年下半年 系统架构设计师 上午试卷 综合知识   本试卷我的完整做题情况 
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
↓第11题