資料庫關系代數
A. 關系資料庫中關系代數的基本運算有哪些
五種基本操作:並,差,積,選擇,投影;構成關系代數完備的操作集。其他非基本操作:可以用以上五種基本操作合成的所有操作。並(U)、交(⌒)、投影(π)選擇(σ)和笛卡兒積(×)。
傳統的集合運算:
1、並(UNION)設有兩個關系R和S,它們具有相同的結構。R和S的並是由屬於R或屬於S的元組組成的集合,運算符為∪。記為T=R∪S。
2、差(DIFFERENCE)R和S的差是由屬於R但不屬於S的元組組成的集合,運算符為-。記為T=R-S。
3、交(INTERSCTION)R和S的交是由既屬於R又屬於S的元組組成的集合,運算符為∩。記為T=R∩S。R∩S=R-(R-S)。
(1)資料庫關系代數擴展閱讀:
在資料庫世界裡,後關系資料庫仍舊泰然自若,保持其本色。
在現代IT界,sql和XML已經成為資料庫的非常重要組成部分,這二者成為資料庫系統結構組成部分的歷史也很長久了,至於開始的時間我也很難記得了。
在60年代末和70年代初,出現了具備靈活欄位長度、嵌套表格、鬆散數據類型選擇的資料庫構架,這樣的資料庫系統不僅受市場歡迎,也得到大家的青睞。這些早期的資料庫系統雖然缺乏像XML一樣的標記功能,但是它們在實際工作中卻表現出和XML極為類似的功能。
描述這些資料庫系統的術語是「後關系」或者「多值」,它們沒有SQL關系資料庫知名,是因為這些資料庫系統缺乏許多新聞的宣傳度,我們很容易把它認為是一個實驗而已,然後這些實驗在人們的印象中就會半途而廢了,最終慢慢的消失。
B. 資料庫的關系代數表達式
資料庫的關系代數表達式是由關系代數運算經有限次復合而成的式子。
在關系代數運算中,把由並(∪)、差(-)、笛卡爾積(×)、投影(π)、選擇(σ)五個基本操作經過有限次復合的式子稱為關系代數表達式。關系代數表達式的運算結果仍然是一個關系。可以用關系代數表達式表示對資料庫的各種數據查詢和更新操作。
關系代數表達式用到的運算符包括集合運算符、專門的關系運算符、算術比較符和邏輯運算符。和交(∩)、聯接(等值聯接)、自然聯接(RXS)、除法(÷) 四個組合操作。
(2)資料庫關系代數擴展閱讀:
關系代數表達式的運算過程是將關系的屬性分為像集屬性和結果屬性兩部分;與關系相同的屬性屬於像集屬性;不相同的屬性屬於結果屬性。在關系中,對像集屬性投影,得到目標數據集。將被關系分組。
分組原則是結果屬性值一樣的元組分為一組。逐一考察每個組,如果它的像集屬性值中包括目標數據集,則對應的結果屬性應屬於該運算結果集。
C. 資料庫 關系代數
題目有錯! 你 C課程表的 cpno 是什麼?
這個學生表 和其他兩張表之間沒有聯系的 無法連接
D. 關系資料庫關系代數表達式怎麼寫
一、關系代數的9種操作:
關系代數中包括了:並、交、差、乘、選擇、投影、聯接、除、自然聯接等操作。
五個基本操作:
並(∪)、差(-)、笛卡爾積(×)、投影(σ)、選擇(π)
四個組合操作:
交(∩)、聯接(等值聯接)、自然聯接(R S)、除法(÷)
注2:等值連接表示先做笛卡爾積(×)之後,對相應列進行選擇或等值關聯後的結果(僅篩選行、不篩選列)
注2:自然連接表示兩個關系中若有相同名稱的屬性,則自動作為關聯條件,且僅列出一列
二、關系代數表達式:
由關系代數運算經有限次復合而成的式子稱為關系代數表達式。這種表達式的運算結果仍然是一個關系。可以用關系代數表達式表示對資料庫的查詢和更新操作。
三、舉例說明:
設教學資料庫中有3個關系:
學生關系S(SNO, SNAME,AGE,SEX)
學習關系SC(SNO,CNO,GRADE)
課程關系C(CNO,CNAME,TEACHER)
(1) 檢索學習課程號為C2的學生學號與成績
------------------------------------
SELECT SNO,GRADE
FROM SC
WHERE CNO='C2'
------------------------------------
π SNO, GRADE (σ CNO='C2' (SC))
************************************
(2) 檢索學習課程號為C2的學生學號與姓名
------------------------------------
SELECT SC.SNO,S.SNAME
FROM SC,S
WHERE SC.SNO=S.SNO
AND SC.CNO='C2'
------------------------------------
π SNO,SNAME (σ CNO='C2' (S SC))
此查詢涉及S和SC,先進行自然連接,然後再執行選擇投影操作。
----
π SNO,SNAME (S) (π SNO (σ CNO='C2' (SC)))
自然連接的右分量為"學了C2課的學生學號的集合"。
此表達式比前一個表達式優化,執行起來要省時間、省空間。
************************************
(3) 檢索選修課程名為MATHS的學生學號與姓名
------------------------------------
SELECT SC.SNO,S.SNAME
FROM SC,S,C
WHERE SC.SNO=S.SNO
AND SC.CNO=C.CNO
AND C.CNAME='MATHS'
------------------------------------
π SNO, SANME (σ CNAME='MATHS' (S SC C))
************************************
(4) 檢索選修課程號為C2或C4的學生學號
------------------------------------
SELECT SNO
FROM SC
WHERE CNO='C2'
OR CNO='C4'
------------------------------------
π SNO (σ CNO='C2'∨CNO='C4' (SC))
************************************
(5) 檢索至少選修課程號為C2或C4的學生學號
------------------------------------
SELECT SA.SNO
FROM SC AS SA,SC AS SB
WHERE SA.SNO=SB.SNO
AND SA.CNO='C2'
AND SB.CNO='C4'
------------------------------------
π 1 (σ 1=4∧2='C2'∧5='C4' (SC×SC))
************************************
(6) 檢索不學C2課的學生姓名與年齡
------------------------------------
SELECT SNAME,AGE
FROM S
MINUS
SELECT S.SNAME,S.AGE
FROM SC,S
WHERE SC.SNO=S.SNO
AND SC.CNO='C2'
(Oracle)
------------------------------------
π SNAME, AGE (S)-π SNAME, AGE (σ CNO='C2' (S SC))
************************************
(7) 檢索學習全部課程的學生姓名
------------------------------------
E. 資料庫的關系代數問題
[例]設教學資料庫中有3個關系:
學生關系S(SNO,SNAME,AGE,SEX)
學習關系SC(SNO,CNO,GRADE)
課程關系C(CNO,CNAME,TEACHER)
下面用關系代數表達式表達每個查詢語句。
(1) 檢索學習課程號為C2的學生學號與成績。
πSNO,GRADE(σ CNO='C2'(SC))
(2) 檢索學習課程號為C2的學生學號與姓名
πSNO,SNAME(σ CNO='C2'(SSC))
由於這個查詢涉及到兩個關系S和SC,因此先對這兩個關系進行自然連接,同一位學生的有關的信息,然後再執行選擇投影操作。
此查詢亦可等價地寫成:
πSNO,SNAME(S)(πSNO(σ CNO='C2'(SC)))
這個表達式中自然連接的右分量為"學了C2課的學生學號的集合"。這個表達式比前一個表達式優化,執行起來要省時間,省空間。
(3)檢索選修課程名為MATHS的學生學號與姓名。
πSNO,SANME(σ CNAME='MATHS'(SSCC))
(4)檢索選修課程號為C2或C4的學生學號。
πSNO(σ CNO='C2'∨CNO='C4'(SC))
(5) 檢索至少選修課程號為C2或C4的學生學號。
π1(σ1=4∧2='C2'∧5='C4'(SC×SC))
這里(SC×SC)表示關系SC自身相乘的乘積操作,其中數字1,2,4,5都為它的結果關系中的屬性序號。
希望能解決您的問題。
F. 資料庫中的關系代數運算
R(X, Y)和S(Y,Z),
R/S=
如果對您有幫助,請記得採納為滿意答案,謝謝!祝您生活愉快!
vaela
G. 資料庫 關系代數計算
線性代數是代數的一個分支,它以研究向量空間與線性映射為對象;由於費馬和笛卡兒的工作,線性代數基本上出現於十七世紀。直到十八世紀末,線性代數的領域還只限於平面與空間。十九世紀上半葉才完成了到n維向量空間的過渡 矩陣論始於凱萊,在十九世紀下半葉,因若當的工作而達到了它的頂點.1888年,皮亞諾以公理的方式定義了有限維或無限維向量空間。托普利茨將線性代數的主要定理推廣到任意體上的最一般的向量空間中.線性映射的概念在大多數情況下能夠擺脫矩陣計算而引導到固有的推理,即是說不依賴於基的選擇。不用交換體而用未必交換之體或環作為運算元之定義域,這就引向模的概念,這一概念很顯著地推廣了向量空間的理論和重新整理了十九世紀所研究過的情況。由於它的簡便,所以就代數在數學和物理的各種不同分支的應用來說,線性代數具有特殊的地位.此外它特別適用於電子計算機的計算,所以它在數值分析與運籌學中佔有重要地位。 線性代數是討論矩陣理論、與矩陣結合的有限維向量空間及其線性變換理論的一門學科。主要理論成熟於十九世紀,而第一塊基石(二、三元線性方程組的解法)則早在兩千年前出現(見於我國古代數學名著《九章算術》)。①線性代數在數學、力學、物理學和技術學科中有各種重要應用,因而它在各種代數分支中占居首要地位;②在計算機廣泛應用的今天,計算機圖形學、計算機輔助設計、密碼學、虛擬現實等技術無不以線性代數為其理論和演算法基礎的一部分;。 ③該學科所體現的幾何觀念與代數方法之間的聯系,從具體概念抽象出來的公理化方法以及嚴謹的邏輯推證、巧妙的歸納綜合等,對於強化人們的數學訓練,增益科學智能是非常有用的;④ 隨著科學的發展,我們不僅要研究單個變數之間的關系,還要進一步研究多個變數之間的關系,各種實際問題在大多數情況下可以線性化,而由於計算機的發展,線性化了的問題又可以計算出來,線性代數正是解決這些問題的有力工具。
H. 資料庫-關系代數-投影 看圖
舉個例子吧,原Student(編號,姓名,出生日期),元組有(1,王五,女,1978-1-1), (2,王五,男,1978-1-1),
在(姓名,出生日期)上投影後會相同的2行(王五,1978-1-1)
I. 資料庫關系代數
第一步:在"教師"表中選出姓名為劉傑老師的記錄
σ姓名=劉傑(教師)
第二步:將選出來的劉傑老師記錄與「課程」表相連接。(可以獲得劉傑老師開設了哪些課程)
σ姓名=劉傑(教師)∞課程
第三步接著,投影出「學生」表中的姓名和系別,與「學生」表格相連接。(可以獲得選了劉傑老師開設的課程的學生的系別和學號)
σ姓名=劉傑(教師)∞課程∞π姓名,系別(學生)
J. 資料庫關系代數運算問題
這個問題一定會涉及到「統計」的問題,而關系代數沒有高級語言中的數據定義,所以關系代數無法解決該問題。