① 資料庫常用的關系運算是什麼
在關系資料庫中,基本的關系運算有三種,它們是選擇、投影和連接。關系的基本運算有兩類:一類是傳統的集合運算(並、差、交等),另一類是專門的關系運算(選擇、投影、連接、除法、外連接等),有些查詢需要幾個基本運算的組合,要經過若干步驟才能完成。
一、傳統的集合運算
1、並(UNION)設有兩個關系R和S,它們具有相同的結構。R和S的並是由屬於R或屬於S的元組組成的集合,運算符為∪。記為T=R∪S。
2、差(DIFFERENCE)R和S的差是由屬於R但不屬於S的元組組成的集合,運算符為-。記為T=R-S。
3、交(INTERSECTION)R和S的交是由既屬於R又屬於S的元組組成的集合,運算符為∩。記為T=R∩S。R∩S=R-(R-S)。
二、選擇運算
從關系中找出滿足給定條件的那些元組稱為選擇。其中的條件是以邏輯表達式給出的,值為真的元組將被選取。這種運算是從水平方向抽取元組。在FOXPRO中的短語FOR和WHILE均相當於選擇運算。
如:LISTFOR出版單位='高等教育出版社'AND單價<=20
三、投影運算
從關系模式中挑選若干屬性組成新的關系稱為投影。這是從列的角度進行的運算,相當於對關系進行垂直分解。在FOXPRO中短語FIELDS相當於投影運算。如:LISTFIELDS單位,姓名
四、連接運算
連接運算是從兩個關系的笛卡爾積中選擇屬性間滿足一定條件的元組。
五、除法運算
在關系代數中,除法運算可理解為笛卡爾積的逆運算。
設被除關系R為m元關系,除關系S為n元關系,那麼它們的商為m-n元關系,記為R÷S。商的構成原則是:將被除關系R中的m-n列,按其值分成若干組,檢查每一組的n列值的集合是否包含除關系S,若包含則取m-n列的值作為商的一個元組,否則不取。
(1)資料庫關系運算擴展閱讀:
資料庫除運算:
除運算的含義–給定關系R (X,Y) 和S (Y,Z),其中X,Y,Z為屬性組。R中的Y與S中的Y可以有不同的屬性名,但必須出自相同的域集。R與S的除運算得到一個新的關系P(X),P是R中滿足下列條件的元組在X屬性列上的投影:元組在X上分量值x的象集Yx包含S在Y上投影的集合。
R÷S的結果為a1,x相當於A y 相當於B,C z相當於D,按照除運算規則,我們不必關注D。只需比較B,C當S關系中的B,C所有的組合(b1,c2)(b2,c3)(b2,c1)都出現在R關系中時,結果才為A
R÷S = {tr[X] | trÎR∧πY (S) íYx },Yx:x在R中的象集,x = tr[X]。除操作是同時從行和列角度進行運算。
② 關系資料庫管理系統應能實現的專門關系運算包括什麼
關系資料庫管理系統應能實現的專門關系運算包括以下幾種:
1. 選擇:從一個關系中選出滿足某個條件的元組。
2. 投影:從一個關系中選取部分屬性,握讓輪生成新的關系。
3. 連接:將兩個或多個關系按照某些條件進行連接,生成滑畢新的關系。
4. 並集:將兩個具有相同結構的關系合並成一個不含重復元組的新關系。
5. 差集:求兩個具有相同結構但內容不完全相同的關系之間差異部分所形成的新結果集段信合。
6. 笛卡爾積:對於給定兩個或多個表,返回其中所有可能存在行之間組合情況所得到結果表。
③ 關系資料庫中關系代數的基本運算有哪些
基本的關系代數運算:選擇、投影、並、集合差、笛卡爾積和更名運算,其中選擇、投影、更名為一元運算,另外三個對兩個關系進行運算,所以為二元運算;
附加的關系代數運算:集合交∩、自然連接運算、賦值運算、外連接運算(左外連接、右外連接、全外連接);
擴展的關系代數運算:廣義投影、聚集(常用聚集函數:sum,avg,min,max)。
④ 關系資料庫中關系代數的基本運算有哪些
五種基本操作:並,差,積,選擇,投影;構成關系代數完備的操作集。其他非基本操作:可以用以上五種基本操作合成的所有操作。並(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)。
(4)資料庫關系運算擴展閱讀:
在資料庫世界裡,後關系資料庫仍舊泰然自若,保持其本色。
在現代IT界,SQL和XML已經成為資料庫的非常重要組成部分,這二者成為資料庫系統結構組成部分的歷史也很長久了,至於開始的時間我也很難記得了。
在60年代末和70年代初,出現了具備靈活欄位長度、嵌套表格、鬆散數據類型選擇的資料庫構架,這樣的資料庫系統不僅受市場歡迎,也得到大家的青睞。這些早期的資料庫系統雖然缺乏像XML一樣的標記功能,但是它們在實際工作中卻表現出和XML極為類似的功能。
描述這些資料庫系統的術語是「後關系」或者「多值」,它們沒有SQL關系資料庫知名,是因為這些資料庫系統缺乏許多新聞的宣傳度,我們很容易把它認為是一個實驗而已,然後這些實驗在人們的印象中就會半途而廢了,最終慢慢的消失。
⑤ 關系基本運算
關系基本運算是關系型資料庫中的核心操作之一,它包括選擇、投影、連接、並集、差集、交集等操作。下面分別介紹這些基本運算:
⑥ 資料庫中專門的關系運算包括那三種
關系基本運算包括:選擇、投影和連接。選擇是篩選出符合條件的記錄;投影是選擇若干屬性;連接是兩個關系通過關聯欄位合並為一個新的關系。
1、選擇(selection)
選擇運算是單目運算,它從一個關系R中選擇出滿足給定條件的所有元組,並同R具有相同的結構。
關系R的選擇運算是從關系R中選擇滿足指定條件(用F表示)的元組構成的新關系.換言之,選擇運算的結果是一個表的水平方向的子集。關系R的選擇運算記為:σF(R)。
2、投影(projection)
投影運算也是單目運算,它從一個關系R所有屬性中選擇某些指定屬性,組成一個新的關系。選擇運算選取關系的某些行,而投影運算選取關系的某些列,是從一個關系出發構造其垂直子集的運算。
3、連接(join)
連接運算是關系的二目運算.關系R與關系S的連接運算是從兩個關系的廣義笛卡爾積中選取屬性間滿足一定條件(稱為連接條件,記為AθB)的元組形成一個新關系。
(6)資料庫關系運算擴展閱讀:
關系運算符有6種關系,分別為小於、小於等於、大於、等於、大於等於、不等於。
1、小於a<b,a小於b時返回真;否則返回假。
2、小於等於a<=b;a小於等於b時返回真;否則返回假。
3、大於a>b;a大於b時返回真;否則返回假。
4、大於等於a>=b;a大於等於b時返回真;否則返回假。
5、等於a=b;a等於b時返回真;否則返回假。
6、不等於a!=b;a不等於b時返回真;否則返回假。
關系運算符的值只能是0或1。關系運算符的值為真時,結果值都為1。關系運算符的值為假時,結果值都為0。
前4種關系運算符的優先順序別相同,後兩種也相同。前四種高於後兩種。關系運算符的優先順序低於算術運算符。關系運算符的優先順序高於賦值運算符。
⑦ 關系資料庫管理系統能實現的專門關系運算包括哪些
包括投影、連接。
關系的基本運算有兩種:傳統的集合運算(並、差、交等)和專門的關系運算(選擇、投影、自然連接、除法、外連接)。有些查詢需要幾個基本操作的組合,並且需要幾個步驟才能完成。
在關系資料庫管理系統中,資料庫中的所有數據及其相互連接被組織成關系,即二維表。關系資料庫系統提供散源完整的高級關系操作來支持資料庫上的各種操作。關系模型具有嚴格的數學理論,使資料庫的研究建立在堅實的數學基礎上。
(7)資料庫關系運算擴展閱讀:
資料庫中的專門關系操作:
1.選擇:
所選邏輯表達式的基本形式是xy,其中表示比較運算符,可以是比較運算符。X和Y是屬性名、常量或簡單函數。它是從行的角度來看的一個操作。
2.投影:
關系R上的投影是從關系R中選擇幾個屬性列,形成新的關系。從列的角度來看,這是一個操作。因為投影取消了某些列之後可能重復的行,所以應該取消這些相同的行。
3.自然連接:
自然連接是一種特殊的等效連接,它要求要比較的兩個關系的組件必須是一組具有相同名稱的屬性,沖啟態並旁橋且從結果中刪除重復屬性列。一般從連接角度看,自然連接需要取消重復的,所以是從行和列的角度來看。
4.部門:
如果關系R除以關系S的結果是關系T,那麼關系T包含了R中所有的屬性及其值,但不包含在S中,並且T的元組和S的元組的所有組合都在R中。
5.外部聯系:
當R和S進行自然連接時,它們在公共屬性中選擇兩個具有相同值的元組來形成新的關系。
此時,關系R和S可能具有公共屬性中不相等的元組,這將導致R或S中放棄元組。這些被放棄的元組稱為掛起元組。
如果懸空元組也保留在結果關系中,並且在其他屬性上填充值,則該連接稱為外部連接。
⑧ 資料庫——關系代數運算
關系代數是一門抽象的查詢語言,它用對關系的運算來表達查詢。
運算對象、運算符、運算結果是運算的三大要素。關系代數的運算對象是關系,運算結果也是關系。
設R和S是n元關系,而且兩者各對應屬性的數據類型也相同。R和S的並操作定義為:
條件:① 等目、同元,即他們的屬性數目必須相同 ② 對任意i,r的第i個屬性域和s的第i個屬性域相同
如:Πname(instructor)∪Πname(student)
簡單來說就是: R和S所有關系都組合在一起, 重復的就不寫
p是選擇操作,p用的是邏輯連接詞,如∧、∨、┐
註:執行選擇時,選擇條件必須是針對同一元組中的相應屬性值代入進行比較
簡單來說就是: 把符合元組的拿出來
a1,a2等是屬性名,r是關系名。其結果為保留此k列的值,並刪除重復的行
條件:①等目、同元,即他們的屬性數目必須相同 ②對任意i,r的第i個屬性域和s的第i個屬性域相同(和並運算一樣的條件)
簡單來說就是:因為是R-S, 找R在S關系中沒有的
假設R的屬性和S的屬性沒有交集就如圖一,如果R和S的屬性有交集,那麼必須重命名這些有交集的屬性
返回表達式E的結果,並賦給它名字X,同時將屬性重命名為A1,A2....An
例一:找出貸款額大於1200的元組
例二:找出貸款大於1200的貸款號
例三:找出有貸款或有賬戶兩者兼有的所有客戶姓名
例四:找出至少有一個貸款及一個賬戶的客戶姓名
例五:找出Perryridge分支機構有貸款的顧客姓名
這個查詢運用了兩個關系,這個時候就要運用笛卡爾積
為什麼要做「σ borrow.loan-number = loan.loan-number」的判斷?因為這裡面的組合很多,而我們要去除掉沒有意義的組合
查詢二要比查詢一更好一點,因為borrower x loan的數據有可能是很龐大的,降低了查詢效率,而查詢二先做了選擇再進行笛卡爾積運算,數據量相較小一點。
例六:找出在Perryridge分支機構有貸款,但在其他分支機構沒有賬號的顧客姓名
例七:找出銀行中最大的賬戶余額
⑨ 資料庫中關系運算有哪些
應該分為兩大類:
1.傳統的數學集合的關系運算
2.資料庫專有的關系運算
現在關系資料庫本身是一個二維表,相當於一個有序的鏈表,也可以看成是數學中的集合。
(1)表與表之間的運算可以看成是集合和集合之間的運算,支持"與"、"或"、「非」和
「異或」等大部分算術運算。
(2)「投影運算」:即對資料庫的一列(欄位)或多列的運算。