關係代數怎麼查詢(圖解關係代數)
2023-04-24 00:29:17 1
在《資料庫發展史》這篇文章中我們提到了相比於網狀、層次資料庫,關係型資料庫的一大優勢在於它有著嚴密的數理邏輯作為支撐。這個底層的數理邏輯,就是關係代數。
那什麼是關係代數呢?關係代數是一種集合思維的操作語言。所謂集合的思維,在關係代數中特指:「一個集合,施加操作得到另一個集合,依次施加關係代數操作,進而得到所需結果(此處的集合,可理解為一張表,或者一個關係)。」或者說,關係代數是一種關於「關係」的規則,用集合的思維,代數的方式來描述、計算「關係」。
關係代數
關係代數的操作規則可以分為兩類,一類是集合操作規則,一類是關係操作規則。
關係代數操作規則
一、基礎概念
元組:結構化表格的行
並相容性:兩個集合(表)的列數相同,且對應列的數值類型相同
二、集合操作規則
1、並操作
並操作
(姓名、魔法等數據來自漫畫、動漫《妖精的尾巴》)
並操作定義:若關係R和關係S是並相容的,則關係R和關係S的並運算結果也是一個關係,記作:R∪S,它由或者出現在關係R中,或者出現在S中的元素構成。
2、差操作
差操作
差操作
差操作定義:若關係R和關係S是並相容的,則關係R和關係S的差運算結果也是一個關係,記作:R-S,它由出現在關係R中但不出現在S中的元素構成。
3、積操作
積操作
積操作定義:這裡的積稱作笛卡兒積,關係R和關係S的笛卡兒積運算結果也是一個關係,記作:R×S,它由關係R中的元組和關係S中的元組進行拼接構成。
4、交操作
交操作
交操作定義:若關係R和關係S是並相容的,則關係R和關係S的交運算結果也是一個關係,記作:R∩S,它由既出現在關係R中又出現在S中的元素構成。
三、關係操作規則
1、選擇操作
選擇操作
選擇操作
選擇操作定義:給關係R一個選擇條件(簡寫為con),選擇操作的結果也是一個關係,記作σcon(R),它由從關係R中選出的滿足條件的元組構成
2、投影操作
投影操作
投影操作定義:一個關係R的投影操作結果也是一個關係,記作Πa(R),它由從關係R中選出的A列元素構成
3、連接操作
3.1 θ連接
θ連接
(姓名等數據來自漫畫、動漫《間諜過家家》)
θ連接操作定義:R和S的θ連接操作結果也是一個關係,它由關係R和關係S的笛卡兒積中,選取滿足θ條件的元素組成。
3.2 等值連接(一種特殊的θ連接)
等值連接
等值連接操作定義:R和S的等值連接操作結果也是一個關係,它由關係R和關係S的笛卡兒積中,選取滿足θ條件(此時的θ條件特指倆關係中的某列的列值相等)的元素組成。
3.3 自然連接(一種特殊的等值連接)
自然連接
自然連接操作定義:R和S的自然連接操作結果也是一個關係,它由關係R和關係S的笛卡兒積中,選取滿足θ條件(此時的θ條件特指倆關係中的相同屬性列的列值相等)的元素組成。
3.4 外連接
外連接
(用戶名稱等數據來自作者喜歡的一些UP主)
外連接操作定義:R和S的外連接操作結果也是一個關係。若R和S進行連接時,倆個關係的行在對方關係找不到對應的行時,為了避免行數據的丟失,會假定該關係中存在空值來進行連接。
4、除操作
除操作
除操作
前提:「被除的「關系列數要大於」除以「關係的列數
除操作定義:R和S的除操作結果也是一個關係,記作R÷S。它的列是在R的基礎上,剔除掉了S。它的行是R包含S行值的行中,剔除滿足S行值後所剩餘的部分。
,