Microsoft Access中的SQL查询平均值

问题描述:

这是桌子:

教师:

    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)

query:显示薪水高于平均水平的讲师.

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

I run following query in 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进行回答

Kindly keep your answer specific to Microsoft Access

假定比较平均值是表FACULTY中所有记录的,则需要分别计算总体平均值,然后才能确定哪些成员超出此平均值平均.

Assuming that the comparative average is for all records in table FACULTY, you will need to calculate the overall average separately, before you can determine which members exceed this average.

您可以这样做:

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