如何在關係代數(DBMS)中使用聚合函式編寫查詢?
聚合函式如下:
max()
min()
sum()
average()
count()
考慮以下表格:
員工 - Emp(empid,ename,salary)
| 員工ID | 員工姓名 | 薪資 |
|---|---|---|
| E1 | Ravi | 4000 |
| E2 | Sanjay | 3500 |
| E3 | Sruthi | 3000 |
| E4 | Alok | 3000 |
| E5 | Pritam | 3000 |
部門 - Dept(deptid,dname)
| 部門ID | 部門名稱 |
|---|---|
| D1 | 計算機科學與工程 |
| D2 | 電子與通訊工程 |
| D3 | 土木工程 |
專案 - Project(projected,pname)
| 專案ID | 專案名稱 |
|---|---|
| P1 | 資料庫 |
| P2 | 網路 |
工作於 - Worksin(empid,depid)
| 員工ID | 部門ID |
|---|---|
| E1 | P1 |
| E2 | P2 |
| E3 | P1 |
| E4 | P2 |
| E5 | P2 |
分配 - Assign(empid,projectid)
| 員工ID | 專案ID |
|---|---|
| E1 | P1 |
| E2 | P2 |
| E3 | P1 |
| E4 | P2 |
| E5 | P2 |
示例 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 | 員工姓名 | 薪資 |
|---|---|---|
| E3 | Smruthi | 3000 |
| E4 | Alok | 3000 |
示例 2
顯示所有從事資料庫專案的員工的姓名。
步驟 1
使用以下命令:
T1=∏projectid(σpname=database(project))
輸出
| 專案ID |
|---|
| P1 |
步驟 2
使用以下命令:
T2= ∏empid(T1⋈assign)
輸出
| 員工ID |
|---|
| E1 |
| E2 |
步驟 3
使用以下命令:
T3= ∏empname(T2⋈emp)
輸出
| 員工姓名 |
|---|
| Ravi |
| Smruti |
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP