關係運算 關係代數 關係代數的基本操作 並 使用條件:兩個關係滿足並相容性 操作結果:將兩個關係合併,並刪除重覆的元組 差 使用條件:兩個關係滿足並相容性 操作結果:R-S產生一個元組在R中但不在S中的關係 笛卡爾積 操作結果:RxS表示將R與S中所有元組拼接的可能。 選擇 操作結果:選擇出滿足條件 ...
關係運算
關係代數
關係代數的基本操作
- 並
- 使用條件:兩個關係滿足並相容性
- 操作結果:將兩個關係合併,並刪除重覆的元組
- 差
- 使用條件:兩個關係滿足並相容性
- 操作結果:R-S產生一個元組在R中但不在S中的關係
- 笛卡爾積
- 操作結果:RxS表示將R與S中所有元組拼接的可能。
- 選擇
- 操作結果:選擇出滿足條件的元組
- 條件優先順序:括弧,比較,非,與,或優先順序依次降低
- 投影
- 操作結果:選擇出選擇出的列
關係代數的拓展操作
- 交
- 操作結果:同時出現在R和S中元組的組合
- 連接
- theta連接:選擇R和S中A和B滿足theta條件的元組連接
- 等值連接:theta條件為等於的連接
- 自然連接:選擇R和S中相同屬性元組屬性值相同的元組
- 除
- 使用情況:查詢......全部的...
- 操作結果:R除S的結果是結果中的元組和S中所有元組結合均在R中
- 外連接
- 左外連接:自然連接+左側表中失配的元組
- 右外連接:自然連接+右側表中失配的元組
- 全外連接:自然連接+兩表中失配的元組
關係代數的語義混淆點
- 至少選擇
- 不選擇
- 全選擇
關係代數的優化過程
暫無
關係演算
關係元組演算
- 組合、與、或、非
- 存在與任意
- 等價變換
關係域演算
- QBE語言
- 關係名區:用於查詢欲查詢的關係名
- 屬性名區:用於顯示對應關係名區關係的所有屬性名
- 操作命令區:用於書寫查詢操作的命令
- 查詢條件區:用於書寫查詢條件
- QBE操作命令
- 顯示——P
- 插入——I
- 刪除——D
- 更新——U
關係演算的安全性問題
- 安全性定義:不產生無限關係和無窮驗證的運算
- 安全性
- 關係代數一定是安全的
- 關係演算不一定是安全的,必須限定有限集合中
三種運算方式的特點
- 關係代數:以集合為操作對象
- 關係演算:以元組為操作對象
- 域演算:以域變數為操作對象
- 三種運算都是等價的,其非過程性依次上升。