資源描述:
《元組關(guān)系演算(補充2)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、2.5關(guān)系演算2.5.1元組關(guān)系演算2.5.2域關(guān)系演算7/17/202112.4關(guān)系演算關(guān)系演算以數(shù)理邏輯中的謂詞演算為基礎(chǔ)比較謂詞>、≥、<、≤、=、≠包含謂詞IN存在謂詞EXISTS常見的謂詞如下表所示7/17/20212種類:按謂詞變元不同分類1.元組關(guān)系演算:以元組變量作為謂詞變元的基本對象元組關(guān)系演算語言ALPHA2.域關(guān)系演算:以域變量作為謂詞變元的基本對象域關(guān)系演算語言QBE7/17/20213元組關(guān)系演算(1)在元組關(guān)系演算(TupleRelationalCalculus)中,元組關(guān)系演算表達(dá)式簡稱為元組表達(dá)式,其一般形式為{t
2、P(t)}(元組成為謂詞變元)其中,t是元組
3、變量,表示一個元數(shù)固定的元組;P是公式,在數(shù)理邏輯中也稱為謂詞,也就是計算機語言中的條件表達(dá)式。{t
4、P(t)}表示滿足公式P的所有元組t的集合。7/17/20214元組關(guān)系演算(2)在元組表達(dá)式中,公式由原子公式組成。定義2.4原子公式(Atoms)有下列三種形式:①R(s)②s[i]θu[j]③s[i]θa或aθu[j]。(R是關(guān)系,s和u是元組,a是常量)在一個公式中,如果元組變量未用存在量詞?或全稱量詞?符號定義,那么稱為自由元組變量(Free),否則稱為約束元組變量(Bound)。7/17/20215元組關(guān)系演算(3)定義2.5公式(Formulas)的遞歸定義如下:①每個原子是一
5、個公式。其中的元組變量是自由變量。②如果P1和P2是公式,那么┐P1、P1∨P2、P1∧P2和P1?P2也都是公式。③如果P1是公式,那么(?s)(P1)和(?s)(P1)也都是公式。④公式中各種運算符的優(yōu)先級從高到低依次為:θ,?和?,┐,∧和∨,?。在公式外還可以加括號,以改變上述優(yōu)先順序。⑤公式只能由上述四種形式構(gòu)成,除此之外構(gòu)成的都不是公式。7/17/20216元組關(guān)系演算(4)例2.16圖2.20的(a)、(b)是關(guān)系R和S,(c)~(g)分別是下面五個元組表達(dá)式的值圖2.20元組關(guān)系演算的例子R1={t
6、S(t)∧t[1]>2}R2={t
7、R(t)∧┐S(t)}R3={t
8、(?u
9、)(S(t)∧R(u)∧t[3]
10、(?u)(R(t)∧S(u)∧t[3]>u[1])}R5={t
11、(?u)(?v)(R(u)∧S(v)∧u[1]>v[2]∧t[1]=u[2]∧t[2]=v[3]∧t[3]=u[1])}7/17/20217元組關(guān)系演算(5)在元組關(guān)系演算的公式中,有下列三個等價的轉(zhuǎn)換規(guī)則:①P1∧P2等價于┐(┐P1∨┐P2);P1∨P2等價于┐(┐P1∧┐P2)。②(?s)(P1(s))等價于┐(?s)(┐P1(s));(?s)(P1(s))等價于┐(?s)(┐P1(s))。③P1?P2等價于┐P1∨P2。7/17/20218元組關(guān)系演算(6)關(guān)系代
12、數(shù)表達(dá)式到元組表達(dá)式的轉(zhuǎn)換例2.17R∪S可用{t
13、R(t)∨S(t)}表示;R-S可用{t
14、R(t)∧┐S(t)}表示;R×S可用{t
15、(?u)(?v)(R(u)∧S(V)∧t[1]=u[1]∧t[2]=u[2]∧t[3]=u[3]∧t[4]=v[1]∧t[5]=v[2]∧t[6]=v[3])}表示。設(shè)投影操作是π2,3(R),那么元組表達(dá)式可寫成:{t
16、(?u)(R(u)∧t[l]=u[2]∧t[2]=u[3])}σF(R)可用{t
17、R(t)∧F‘}表示,F(xiàn)’是F的等價表示形式。譬如σ2=‘d’(R)可寫成{t
18、(R(t)∧t[2]=‘d’)。7/17/202197/17/202110元
19、組關(guān)系演算的例子例2.16圖2.20的(a)、(b)是關(guān)系R和S,(c)~(g)分別是下面五個元組表達(dá)式的值圖2.20元組關(guān)系演算的例子R1={t
20、S(t)∧t[1]>2}R2={t
21、R(t)∧┐S(t)}R3={t
22、(?u)(S(t)∧R(u)∧t[3]
23、(?u)(R(t)∧S(u)∧t[3]>u[1])}R5={t
24、(?u)(?v)(R(u)∧S(v)∧u[1]>v[2]∧t[1]=u[2]∧t[2]=v[3]∧t[3]=u[1])}7/17/202111元組關(guān)系演算語言ALPHA由E.F.Codd提出INGRES所用的QUEL語言是參照ALPHA語言研制的語句檢
25、索語句GET更新語句PUT,HOLD,UPDATE,DELETE,DROP7/17/202112元組關(guān)系演算語言ALPHA檢索操作GETGET工作空間名[(定額)](表達(dá)式1)[:操作條件][DOWN/UP表達(dá)式2]插入操作建立新元組--PUT修改操作HOLD--修改--UPDATE刪除操作HOLD--DELETE7/17/2021132.4關(guān)系演算2.4.1元組關(guān)系演算2.4.2域關(guān)系演算7/17/2021