没有CTE,您可以执行以下操作:
Select Z.Department, Z.AvgWage
From (
Select Department, Avg(Wage) AvgWage
From Employees
Group By Department
) As Z
Where AvgWage = (
Select Max(Z1.AvgWage)
From (
Select Department, Avg(Wage) AvgWage
From Employees
Group By Department
) Z1
)
Run Code Online (Sandbox Code Playgroud)
使用CTE,您可以:
With AvgWages As
(
Select Department
, Avg(Wage) AvgWage
, Rank() Over( Order By Avg(Wage) Desc ) WageRank
From Employees
Group By Department
)
Select Department, AvgWage, WageRank
From AvgWages
Where WageRank = 1
Run Code Online (Sandbox Code Playgroud)
通过谷歌搜索...
原因:SELECT 列表不能同时包含组函数(例如 AVG、COUNT、MAX、MIN、SUM、STDDEV 或 VARIANCE)和单个列表达式,除非单个列表达式包含在 GROUP BY 子句中。
操作:从 SELECT 列表中删除组函数或单个列表达式,或者添加包含列出的所有单个列表达式的 GROUP BY 子句。
| 归档时间: |
|
| 查看次数: |
2473 次 |
| 最近记录: |