我有下面的Access查詢,它工作正常。然而,現在大約需要8-10秒才能完成大約700條記錄。 FROM
是查詢時間很少的另一個查詢。我已經縮小到MAX()
函數,因爲當我刪除該函數時,它運行的查詢時間很少。我能做些什麼來加快速度?我將假設隨着更多數據進入數據庫,查詢需要的時間越長。訪問查詢MAX()減緩查詢
SELECT FirstName, LastName, TeamID, MAX(total) AS totalMax
FROM attendanceViewAll
WHERE TeamID IN(5,9,13)
GROUP BY FirstName, LastName, TeamID
這裏是子查詢,基本上它從表中選擇一堆數據。這發生在不到一秒鐘的時間。此查詢的結果是按日期排序的所有內容,並且agentID
。然後,我使用上述查詢來查找MAX(total)
,以便我可以將代理分組以進行彙總。我也使用下面的查詢來獲取其他報告。
SELECT
a1.TeamID,
a1.FirstName,
a1.LastName,
a1.incurredDate,
a1.points,
a1.OneFallOff,
a1.TwoFallOff,
(select sum(a2.actualPoints)
from attendanceView as a2 where a2.agentID = a1.agentID and a2.incurredDate <= a1.incurredDate) as total,
a1.comment, a1.linked, a1.FallOffDate
FROM attendanceView as a1;
你如何組裝你的'attendanceViewAll'視圖? – Brad
不知道子查詢是什麼,建議優化策略是沒有意義的。 –
我用另一個查詢編輯過。 –