0
我正在使用Oracle。我有表所示:STDDEV函数和条款
Company Employee salary
A1 Jim 122000
...
我想和其薪水超过2点标准差(〜> 95%)的员工数最高回报的公司。这里是我的代码
With Com_2Std as (
Select company-name, AVG(salary)+2*STDDEV(salary) as AboveS
From works
Group By company-name)
Select company-name, count(employee-name) as ENumber
From works
Where ENumber=MAX(
Select count(a.employee-name)
From works a, Com_2Std b
Where a.company-name=b.company-name
And a.salary>b.AboveS;
Group by a.company-name)
Group by company-name;
我有两个quesions:
(1)我无法访问Oracle今天不能对其进行测试。请问我的代码是否正确? (2)看起来相当复杂,有什么办法可以简化它吗?
不,你不能这样使用MAX()。我不愿意为你写一个Oracle版本,因为我不太熟悉它的某些语法特点。 – shawnt00 2015-02-05 22:05:08