Sql 在Access 2010中,我希望找到MCO提供的%where data>;40不是MCO占总计数的%,而是每个MCO占总计数的%

Sql 在Access 2010中,我希望找到MCO提供的%where data>;40不是MCO占总计数的%,而是每个MCO占总计数的%,sql,ms-access-2010,Sql,Ms Access 2010,所以,更清楚地说(我希望)我希望计数(对于给定的MCO,数据>40)/(对于给定的MCO,计数(ID))全部由MCO完成 SELECT tblMCOs.MCOs, Count([tblMCOs].[ID])/(Select Count(tblMCOs.ID) From tblMCOs) AS MCOAvg FROM tblMCOs WHERE (((tblMCOs.data)>40)) GROUP BY tblMCOs.MCOs ORDE

所以,更清楚地说(我希望)我希望计数(对于给定的MCO,数据>40)/(对于给定的MCO,计数(ID))全部由MCO完成

    SELECT tblMCOs.MCOs, Count([tblMCOs].[ID])/(Select Count(tblMCOs.ID) 
    From tblMCOs)  AS MCOAvg
    FROM tblMCOs
    WHERE (((tblMCOs.data)>40))
    GROUP BY tblMCOs.MCOs
    ORDER BY tblMCOs.MCOs;
这一切都是为了一个更大的项目使用一些模拟沙箱数据。所以,我可以手工计算,我现在得到的是计数(给定数据>40)/总计数(ID),按MCO分组


提前感谢您的帮助。

我认为您需要这样做(很抱歉,我的笔记本电脑目前无法访问,因此语法可能需要调整):

SELECT 
    tblMCOs.MCOs, 
    SUM(IIF(tblMCOs.data > 40, 1, 0)) / SUM(1)
FROM 
    tblMCOs
GROUP BY 
    tblMCOs.MCOs
ORDER BY 
    tblMCOs.MCOs;