Microsoft Access中的SQL查询平均值

时间:2013-03-20 04:42:38

标签: sql ms-access

这是表格:

系:

    School_ID char(3), 
    Fac_LastName char(15), 
    Fac_FirstName char(15), 
    Fac_DOB char(15), 
    Fac_SS# char(15), 
    Fac_Address char(15), 
    Fac_City char(15), 
    Fac_State char(2), 
    Fac_Zip char(5), 
    Fac_salary numeric(8,2)

查询:显示工资高于平均水平的教师。

我在Microsoft Access中运行以下查询:

SELECT Avg(FACULTY.Fac_salary) AS average, FACULTY.Fac_LastName
FROM FACULTY
GROUP BY FACULTY.Fac_LastName
HAVING (((FACULTY.Fac_salary) >Avg([FACULTY].[Fac_salary])));

但是它的给予和错误(((FACULTY.Fac_salary)> Avg([FACULTY]。[Fac_salary])))不是聚合门函数的一部分。

请保留您的答案特定于Microsoft Access

1 个答案:

答案 0 :(得分:1)

假设比较平均值适用于表FACULTY中的所有记录,您需要单独计算总体平均值,然后才能确定哪些成员超过此平均值。

你可以这样做:

SELECT FACULTY.Fac_LastName, FACULTY.Fac_salary
FROM FACULTY
WHERE ((FACULTY.Fac_salary) > (SELECT Avg(FACULTY.Fac_salary) FROM FACULTY));