解釋DBMS中代數關係的一元運算?


查詢是提問或請求資訊。查詢語言是一種用於從資料庫中檢索資訊的語言。

查詢語言分為兩種型別:

  • 過程式語言

  • 非過程式語言

過程式語言

透過指定要執行的操作序列來從資料庫中檢索資訊。

例如:關係代數。

結構化查詢語言(SQL)基於關係代數。

關係代數由一組操作組成,這些操作將一個或兩個關係作為輸入,並生成一個新的關係作為輸出。

關係代數運算的型別

關係代數運算的不同型別如下:

  • 選擇運算

  • 投影運算

  • 重新命名運算

  • 並運算

  • 交運算

  • 差運算

  • 笛卡爾積運算

  • 連線運算

  • 除運算

選擇、投影、重新命名屬於一元運算(對一個表進行操作)。

選擇運算

它顯示滿足條件的記錄,並用西格瑪(σ)表示。它是原始關係的水平子集。

語法

選擇運算的語法如下:

σcondition(table name)

示例1

考慮以下給出的學生表:

學號專業班級
1計算機科學與工程A
2電子與通訊工程B
3土木工程B
4資訊科技A

要顯示學生表的所有記錄,請使用以下命令:

σ(student)

要顯示學生表中計算機科學與工程專業的全部記錄,我們可以使用以下命令:

σbranch=cse(student)

輸出

學號專業班級
1計算機科學與工程A

要顯示學生表中學號大於2的所有記錄,我們可以使用以下命令:

σRegNo>2(student)

輸出

學號專業班級
3土木工程B
4資訊科技A

要顯示電子與通訊工程專業班級B的學生的記錄,請使用以下命令:

σbranch=ECE ^ section=B(student)

要顯示班級B的計算機科學與工程和資訊科技專業的記錄,請使用以下命令:

σSection=B ^ Branch=cse ∨ branch=IT(student)

示例2

考慮EMPLOYEE TABLE作為另一個示例,以瞭解選擇操作:

檢索工資大於20,000的員工資訊。

  • 如果指定一個條件,則得到以下結果:

σ salary > 20,000 (emp)
  • 如果在查詢中指定多個條件(AND:∧,OR:∨,Not:#,等於:=,>,<,>=,<=)

關係運算符將用於將多個條件組合到一個語句中。

例如:如果我們希望檢索工資>20,000且擔任系主任(HOD)且部門編號為20的員工資訊。

σ salary > 20,000 ^LOC=HOD ^Deptno=20(emp)

投影運算

它顯示錶的特定列。它用派(Π)表示。它是原始關係的垂直子集。它消除了重複的元組。

語法

投影運算的語法如下:

∏regno(student)

示例1

考慮以下給出的學生表:

學號專業班級
1計算機科學與工程A
2電子與通訊工程B
3土木工程B
4資訊科技A

要顯示學生表的學號列,請使用以下命令:

∏regno(student)

輸出

學號
1
2
3
4

要顯示學生表的專業、班級列,請使用以下命令:

branch,section(student)

輸出

專業班級
計算機科學與工程A
電子與通訊工程B
土木工程B
資訊科技A

要顯示電子與通訊工程學生的學號、班級,請使用以下命令:

∏regno,section(σbranch=ECE(student))

輸出

學號班級
2B

**注意**:可以在選擇運算中編寫條件,但不能在投影運算中編寫條件。

示例2

考慮員工表以瞭解更多關於投影的資訊。

  • 如果在查詢中未指定任何條件,則

∏ empid, ename, salary, address, dno (emp)
  • 如果指定了條件,則選擇和投影的組合如下:

∏ empid, ename, salary, address, dno (σ salary >20,00 ^ LOC = HOD ^ dno=20) (emp)

重新命名運算

它用於為關係分配一個新名稱。它用ρ(rho)表示。

語法

重新命名運算的語法如下:

ρnewname (tablename or expression)

考慮以下給出的學生表:

學號專業班級
1計算機科學與工程A
2電子與通訊工程B
3土木工程B
4資訊科技A

示例1

使用以下方法將學生表重新命名為newstudent:

ρnewstudent (student)

示例2

使用以下命令將學生表的姓名、專業列分別重新命名為newname和newbranch:

ρnewname,newbranch(Πname,branch( student))

二元運算應用於兩個相容的關係。

如果兩個關係R1、R2的度數相同並且對應屬性的域相同,則這兩個關係是相容的。

DDL中的Rho用於關係名稱,DML中的Rho用於屬性名稱。

            SQL                      Old name                   New name

重新命名型別

重新命名可以使用三種方法,如下所示:

  • 更改關係的名稱。

  • 更改屬性的名稱。

  • 兩者都更改。

更新於:2021年7月6日

13K+ 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告