如何获取sql server中一列数据的平均值

时间:2013-10-29 04:09:44

标签: sql sql-server average

我的目标是列出高于平均教育水平的员工

这是我的

Select  [ED_LVL],
   AVG (ED_LVL) as 'AVG ED_LVL'
   From [Enterprise].[dbo].[Employee]
   Group BY [ED_LVL]

我猜我必须制作某种子查询或分区?不知道该怎么做 谢谢!

4 个答案:

答案 0 :(得分:2)

试试这个:

Select  *
From [Enterprise].[dbo].[Employee]
WHERE ED_LVL > (Select  AVG(ED_LVL) From [Enterprise].[dbo].[Employee])

答案 1 :(得分:1)

这是平均功能的使用方式:

SELECT AVG(column_name) FROM table_name

关于你的问题,试试这个:

Select  * FROM [Enterprise].[dbo].[Employee] 
WHERE [ED_LVL]>(SELECT AVG(ED_LVL) FROM [Enterprise].[dbo].[Employee])

其中给出了员工详细信息,其中ED_LVL大于平均ED_LVL。

答案 2 :(得分:1)

试试这个:

select *
from Employee t
where t.ED_LVL >
(
    select AVG(e.ED_LVL) [avg]
    from Employee e
)

答案 3 :(得分:0)

试试这个!!

 SELECT  [ED_LVL],
    FROM (
      SELECT
         [ED_LVL],
        AVG( [ED_LVL]) OVER () AS  avg_edu,
      FROM [Enterprise].[dbo].[Employee]
    ) s
    WHERE [ED_LVL]> avg_edu