私は自分のデータベース クラスの関係代数を理解しようとしていますが、ここで誰かが私が行ったことを見て、何が正しくて何が正しくないかを理解するのを手伝ってくれるかどうか疑問に思っていました。
私が解決しようとしているのは、部門ごとに、その部門のすべての従業員の名前と最低および最高の給与範囲を取得することです。
テーブルのセットアップ:
Employee(Fname, Minit, Lname, Ssn, Bdate, Address, Sex, Salary, Super_ssn, Dno)
Department(Dname, Dnumber, Mgr_ssn, Mgr_start_date)
SQL:
Select Dname, Min(Salary), Max(Salary)
from EMPLOYEE, DEPARTMENT
Where Dnumber = Dno
Group by Dname
関係代数 (ステップ、1 行に 1 つのオペランド):
- 給与 ← π(Dno, Salary)[EMPLOYEE]
- 部署 ← π(Dname, Dnumber)[DEPARTMENT]
- SalariesD ← Salaries JOIN(Symbol wnt work)(Dno=Dnumber) 部署
- 選択 ← π(Dname, Min(給与), Max(給与))[SalariesD]
- 結果 ← グループシンボル(Dname)[選択]
整形でごめんなさい。これで正しい軌道に乗っているかどうか教えてください。