如何在關係代數(DBMS)中使用聚合函式編寫查詢?


聚合函式如下:

  • max()

  • min()

  • sum()

  • average()

  • count()

考慮以下表格:

員工 - Emp(empid,ename,salary)

員工ID員工姓名薪資
E1Ravi4000
E2Sanjay3500
E3Sruthi3000
E4Alok3000
E5Pritam3000

部門 - Dept(deptid,dname)

部門ID部門名稱
D1計算機科學與工程
D2電子與通訊工程
D3土木工程

專案 - Project(projected,pname)

專案ID專案名稱
P1資料庫
P2網路

工作於 - Worksin(empid,depid)

員工ID部門ID
E1P1
E2P2
E3P1
E4P2
E5P2

分配 - Assign(empid,projectid)

員工ID專案ID
E1P1
E2P2
E3P1
E4P2
E5P2

示例 1

顯示在電子與通訊工程部門工作的員工的詳細資訊。

步驟 1

使用以下語法。這裡,T1= 電子與通訊工程的部門ID

T1=∏deptid(σdname=ece(dept))

輸出

部門ID
D2

步驟 2

這裡,⋈= {T1.deptid=worksin.deptid} 且 T2= 電子與通訊工程的所有員工ID

T2= ∏empid(T1⋈worksin)

輸出

員工ID
E3
E4

步驟 3

這裡,T3=(T2⋈emp),⋈={T2.empid=emp.empid} 且 T3= 電子與通訊工程所有員工的詳細資訊

員工ID員工姓名薪資
E3Smruthi3000
E4Alok3000

示例 2

顯示所有從事資料庫專案的員工的姓名。

步驟 1

使用以下命令:

T1=∏projectid(σpname=database(project))

輸出

專案ID
P1

步驟 2

使用以下命令:

T2= ∏empid(T1⋈assign)

輸出

員工ID
E1
E2

步驟 3

使用以下命令:

T3= ∏empname(T2⋈emp)

輸出

員工姓名
Ravi
Smruti

更新於: 2021年7月6日

6K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.