使用SQL编写以下查询:

时间:2019-04-22 22:55:28

标签: mysql sql

为您提供了以下关系模式(带下划线的键):

  • Employee(Ename,Salary)
  • 项目(Pname,Agency,预算)
  • 分配(Pname,Ename)。

外键:

  • 分配参考中的Ename员工(Ename)。
  • 分配参考项目(Pname)中的Pname。

在SQL中编写以下查询:

  • S1:查找仅分配给一个项目的员工。
  • S2:查找薪水比Mark的薪水高的员工(Mark是员工)。
  • S3:对于每个项目,计算预算较高的项目数。
  • S4:查找预算低于同一项目的平均项目预算的项目 代理商。

我做了S1和S2,但是对于S3和S4,我尝试了递归,但是它不起作用

 WITH recursive Number1(Pname2, Budget2, Agency2) As(
 (select Pname,Budget, Agency from project)
 Union
 (select P.pname, B.budget2, b.Agency2
 from project P, Number1 B
 where p.budget=B.budget2 and p.agency= b.agency2))
 select Number1.pname2 
 from project P, Number1 B
 where pname2 < B.buget2;

0 个答案:

没有答案