2

我正在尝试了解我的数据库类的关系代数,我想知道这里是否有人可以查看我所做的并帮助我弄清楚什么是正确的,什么不是。

我要解决的是:对于每个部门,检索该部门中每个员工的名称以及最低和最高工资范围。

表设置:

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    

关系代数(步骤,每行一个操作数):

  • 工资 ← π(Dno, Salary)[EMPLOYEE]
  • 部门 ← π(Dname, Dnumber)[DEPARTMENT]
  • SalariesD ← Salaries JOIN(符号不会工作)(Dno=Dnumber) 部门
  • 选择 ← π(Dname, Min(Salary), Max(Salary))[SalariesD]
  • 结果 ← Group-Symbol(Dname)[选择]

对不起格式。如果我在正确的轨道上,请告诉我。

4

1 回答 1

0

我想这也可能是对的......

select a.Fname,Max(a.Salary),Min(a.Salary)
from Employee a
join Department b on a.Dno = b.Dnumber
group by Dname
于 2013-10-21T06:27:14.787 回答