0

I want to get sum of average

SELECT
        Employees.EmployeeID AS EMPLOYEEID,
        Employees.EMPLOYEENAMESURNAMEFORMAT AS LastFirstName,

        SUM(MAILCOUNT) MAILCOUNT,
        COUNT(*) DAYCOUNT,
        AVG(MAILCOUNT) AVERAGE 
    FROM Employees
    LEFT JOIN ST_LAWERP_DAILYMAIL_PERFORMANCE ON Employees.EmployeeID = ST_LAWERP_DAILYMAIL_PERFORMANCE.EMPLOYEEID
    WHERE Employees.ACTIVESTATUS = 1 
        AND Employees.Loginname<>''
        AND Employees.Title NOT IN ('Chauffeur','Intern','Summer Intern')
        AND ST_LAWERP_DAILYMAIL_PERFORMANCE.DATE BETWEEN '2011-01-01' AND '2015-01-01'

    GROUP BY Employees.EmployeeID,Employees.EMPLOYEENAMESURNAMEFORMAT
marc_s
  • 732,580
  • 175
  • 1,330
  • 1,459

1 Answers1

1

You can use a window function to get the sum of the average:

SELECT
        Employees.EmployeeID AS EMPLOYEEID,
        Employees.EMPLOYEENAMESURNAMEFORMAT AS LastFirstName,

        SUM(MAILCOUNT) MAILCOUNT,
        COUNT(*) DAYCOUNT,
        AVG(MAILCOUNT) AVERAGE ,
        sum(avg(MAILCOUNT)) over () as SUMAVERAGE
    FROM Employees
    LEFT JOIN ST_LAWERP_DAILYMAIL_PERFORMANCE ON Employees.EmployeeID = ST_LAWERP_DAILYMAIL_PERFORMANCE.EMPLOYEEID
    WHERE Employees.ACTIVESTATUS = 1 
        AND Employees.Loginname<>''
        AND Employees.Title NOT IN ('Chauffeur','Intern','Summer Intern')
        AND ST_LAWERP_DAILYMAIL_PERFORMANCE.DATE BETWEEN '2011-01-01' AND '2015-01-01'

    GROUP BY Employees.EmployeeID,Employees.EMPLOYEENAMESURNAMEFORMAT
Gordon Linoff
  • 1,242,037
  • 58
  • 646
  • 786