更新匹配每月日期的查询

Update Query matching a Monthly date

我有一个 table tblQA 存储员工质量评估数据。它有 14 个 yes/no 字段来跟踪各种趋势。 (见下面的代码)我知道存储计算通常是不行的,但查询会持续 2-3 分钟 运行s,而我只有一年预期数据的 1/3。我想做的是 运行 我自己每月查询一次并将该数据存储在 table 中,以便许多查看它的主管可以快速访问它。我希望将给定月份的 14 个趋势的平均值存储在 table 中,其中包含这 14 个趋势和 "mmmm yyyy" 格式的日期。我想要给定月份的最终 QA 和每个趋势项目的平均错误率。我试过这个查询:

UPDATE DISTINCTROW tblQA, tblAverageTrends 
    SET tblAverageTrends.Appeal = Avg([tblQA].[Appeal]),
        tblAverageTrends.NRP = Avg([tblQA].[NRP]),
        tblAverageTrends.ChurnEscalation = Avg([tblQA].[ChurnEscalation]),
        tblAverageTrends.ProtocolNotFollowed = Avg([tblQA].[ProtocolNotFollowed]), 
        tblAverageTrends.Resubmission = Avg([tblQA].[Resubmission]),
        tblAverageTrends.Transfer = Avg([tblQA].[Transfer]),
        tblAverageTrends.ChargeCorrection = Avg([tblQA].[ChargeCorrection]),
        tblAverageTrends.Distribution = Avg([tblQA].[Distribution]),
        tblAverageTrends.Adjustment = Avg([tblQA].[Adjustment]),
        tblAverageTrends.PayorUpdate = Avg([tblQA].[PayorUpdate]),
        tblAverageTrends.TOBPOS = Avg([tblQA].[TOBPOS]),
        tblAverageTrends.CaseBilledUntimely = Avg([tblQA].[CaseBilledUntimely]),
        tblAverageTrends.Noting = Avg([tblQA].[Noting]),
        tblAverageTrends.MovedChargesIncorrectly = Avg([tblQA].[MovedChargesIncorrectly]) 
        WHERE (((tblQA.Final)=True) 
            AND ((Format$([tblQA].[NoteDate],'mmmm yyyy'))="September 2017"));

我在 tblAverage Trends 中预置了 2017 年 9 月的日期。但是没有任何更新。我是 SQL 的清洁工(我正在努力学习),但我使用 Access 中的查询设计器进行了设置。 Access Query Designer View 我觉得我的陈述缺少的是将 avg 链接到指定 9 月 QA 的正确行,但我不知道如何让 Access 查询设计器执​​行此操作。

您可以使用:

[tblQA].[NoteDate] Between DateSerial(Year(Date()), Month(Date()) - 1, 1) And DateSerial(Year(Date()), Month(Date()), 0)

这将使用 NoteDate 上的索引。如果不存在,请添加它。