scottyjohn
Technical User
Hi all,
Sorry in advance for the size of this query! It was the only way I knew how to achieve what I wanted. The problem is that although the query eventually returns the desired result, it takes approximately 11 minutes to run. Im using access as a front end to a number of linked tables on the same remote Oracle DB. I am displaying the results of this query in a subform on a main form. its the only query running on that form. Any help you guys can give about speeding up my query would be much appreciated as my knowledge of tuning is very limited!
SELECT "GLASGOW" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSGLASGOW ON SOFTPHONE.EMPID = qryAGENTSGLASGOW.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "GLASGOW", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "SKYDEALS" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSSKYDEALS ON SOFTPHONE.EMPID = qryAGENTSSKYDEALS.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "SKYDEALS", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "TFR" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSTFR ON SOFTPHONE.EMPID = qryAGENTSTFR.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "TFR", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "SWANSEA" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSSWANSEA ON SOFTPHONE.EMPID = qryAGENTSSWANSEA.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "SWANSEA", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "TEAM LINCOLN" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSTEAMLINCOLN ON SOFTPHONE.EMPID = qryAGENTSTEAMLINCOLN.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "TEAM LINCOLN", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "COVENTRY" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSCOVENTRY ON SOFTPHONE.EMPID = qryAGENTSCOVENTRY.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "COVENTRY", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"));
UNION ALL SELECT "RETAIL" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSRETAIL ON SOFTPHONE.EMPID = qryAGENTSRETAIL.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "RETAIL", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"));
Thanks in advance
John
ski_69@hotmail.com
![[bigglasses] [bigglasses] [bigglasses]](/data/assets/smilies/bigglasses.gif)
Sorry in advance for the size of this query! It was the only way I knew how to achieve what I wanted. The problem is that although the query eventually returns the desired result, it takes approximately 11 minutes to run. Im using access as a front end to a number of linked tables on the same remote Oracle DB. I am displaying the results of this query in a subform on a main form. its the only query running on that form. Any help you guys can give about speeding up my query would be much appreciated as my knowledge of tuning is very limited!
SELECT "GLASGOW" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSGLASGOW ON SOFTPHONE.EMPID = qryAGENTSGLASGOW.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "GLASGOW", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "SKYDEALS" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSSKYDEALS ON SOFTPHONE.EMPID = qryAGENTSSKYDEALS.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "SKYDEALS", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "TFR" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSTFR ON SOFTPHONE.EMPID = qryAGENTSTFR.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "TFR", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "SWANSEA" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSSWANSEA ON SOFTPHONE.EMPID = qryAGENTSSWANSEA.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "SWANSEA", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "TEAM LINCOLN" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSTEAMLINCOLN ON SOFTPHONE.EMPID = qryAGENTSTEAMLINCOLN.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "TEAM LINCOLN", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"))
UNION ALL
SELECT "COVENTRY" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSCOVENTRY ON SOFTPHONE.EMPID = qryAGENTSCOVENTRY.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "COVENTRY", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"));
UNION ALL SELECT "RETAIL" AS SITE, tblBUSINESS_GROUPS.ALIAS AS [BUSINESS GROUP], Count(tblBUSINESS_GROUPS.ALIAS) AS CALLS
FROM ((SOFTPHONE INNER JOIN qryAGENTSRETAIL ON SOFTPHONE.EMPID = qryAGENTSRETAIL.EMPLOYEE_ID) INNER JOIN ROUTING ON SOFTPHONE.PRODUCT = ROUTING.PRODUCT) INNER JOIN tblBUSINESS_GROUPS ON ROUTING.BUSINESS_GROUP = tblBUSINESS_GROUPS.ALIAS
GROUP BY "RETAIL", tblBUSINESS_GROUPS.ALIAS, SOFTPHONE.STARTD, SOFTPHONE.DIRECTION
HAVING (((SOFTPHONE.STARTD)=[Forms]![frmSTART]![txtOVERFLOWDATE]) AND ((SOFTPHONE.DIRECTION)="I"));
Thanks in advance
John
ski_69@hotmail.com
![[bigglasses] [bigglasses] [bigglasses]](/data/assets/smilies/bigglasses.gif)