.R(s),其中R是關係名,s是元組變數。它表示這樣的一個命題:“s是關係R的一個元組”。
.s[i]θu[j],其中s和u都是元組變數,θ是算術比較運算符。該原子公式表示這樣的命題:“元組s的第i個分量與元組u的第j個分量之間滿足θ關係”。例如,s[1]<u[2]表示元組s的第一個分量必須小於元組u的第二個分量。
.s[i]θa或aθs[i],這裡a是一個常量。前一個原子公式表示這樣的命題:“元組s的第i個分量與常量a之間滿足θ關係”。
在一個公式中,如果一個元組變數的前面沒有存在量詞Э或全稱量詞▽等符號,那么稱之為自由元組變數,否則稱之為約束元組變數。元組表達式的一般形式{t│Q(t)}中,t是Q中唯一的自由元組變數。
關係代數的6種基本運算均可用元組表達式來表示(反之亦然)。其表示如下:
1)並:R∪S={t│R(t)∨S(t)}
2)交:R∩S={t│R(t)∧S(t)}
3)差:R-S={t│R(t)∧┓S(t)}
4)投影:Πi1,i2,…ik(R)={t│(Эu)(R(u)∧t[1]=u[i1]∧t[2]=u[i2]∧…t[k]=u[ik])}
5)選擇:σF(R)={t∣R(t)∧F’}
其中F’是F的等價表示形式。
6)連線
R∞FS={t│(Эu)(Эv)(R(u)∧S(v)∧t[1]=u[1]∧t[2]=u[2]∧…t[n]=u[n]∧t[n+1]=v[1]∧…t[n+m]=v[m]∧F’)}
【例4.10】根據表4.2營業庫顯示所有品名及其單價。
C01={t∣(Эu)(營業庫(u))∧t[1]=u[品名]∧t[2]=u[單價]}
【例4.11】有兩個關係R和S,計算:
R1={t∣R(t)∧┓S(t)}
R2={t∣(Эu)(S(t)∧R(u)∧t[3]<u[2])}
R3={t∣(▽u)(R(t)∧S(u)∧t[3]>u[1])}
的結果如圖4.5所示。
R | S | |
A B C 1 2 3 4 5 6 7 8 9 | A B C 1 2 3 4 5 6 5 6 9 | |
R1 | R2 | R3 |
A B C 4 5 6 7 8 9 | A B C 4 5 6 7 8 9 | A B C 1 2 3 3 4 6 |