SELECT
Yearly.CallerName as CallerNameID,
Monthly.LocalCallCount,
Yearly.TotLDCallsPerYear,
monthly.year,
monthly.month,
Daily.TotLDDailyCalls
--,Day1.
FROM
( --Monthly Calls
SELECT
datepart(Month,GtCalcDate) As [Month],
datepart(Year,GtCalcDate) As [Year],
CallerName,
Sum (TalkDuration) /60 As TalkTimeTot,
--sum (TalkDuration) /60 /@BusDay As AvgCallLengthDay,
SUM(CASE WHEN Direction = '2' and LEN(Targetnum) = 7 THEN 1 ELSE 0 END) AS [LocalCallCount],
SUM(CASE WHEN Direction = '2' and LEN(Targetnum) >= 11 THEN 1 ELSE 0 END) AS [TotLDCallsPerMonth],
--SUM(CASE WHEN Direction = '2' and LEN(Targetnum) >= 11 THEN 1 ELSE 0 END) /21.5 AS [AvgLDCallsPerDay],Avg (TalkDuration)/60 As AvgTalk,
--SUM(CASE WHEN TargetNum = '411' THEN 1 ELSE 0 END) AS [411Ccount],
--SUM(CASE WHEN datename(weekday(GtCalcDate in 'Saturday','Sunday' THEN 0 ELSE 1 END)) AS busdaycount,
(select SUM(CASE WHEN datename(Weekday, q.GtCalcDate) = 'Saturday' or datename(Weekday, q.GtCalcDate) = 'Sunday' THEN 0 ELSE 1 END)
from (select distinct GtCalcDate from cdrmain )q)AS yeardaycount,
A.DayCount As BusDayCount
FROM CDRMAIN
Inner Join (
select Month(GtCalcDate) As GTMonth,
Year(GtCalcDate) As GTYear,
SUM(CASE WHEN datename(Weekday, q.GtCalcDate) In ('Saturday', 'Sunday')
THEN 0
ELSE 1
END) As DayCount
from (select distinct GtCalcDate from cdrmain) q
Group By Month(GtCalcDate), Year(GtCalcDate)
) As A
On Month(GtCalcDate) = A.GTMonth
And Year(GtCalcDate) = A.GTYear
Where Len (TargetNum) >= 10 or TargetNum ='411' or Len (TargetNum) >= 7
GROUP BY datepart(Month,GtCalcDate),
datepart(Year,GtCalcDate), CallerName,a.daycount
HAVING (CallerName = 'Beth Scharstein')Or
(CallerName = 'Betsy Enderle')Or
(CallerName = 'Christian Heilman')Or
(CallerName = 'Christine Fuka')Or
(CallerName = 'Donna Crenshaw')Or
(CallerName = 'Erin Love')Or
(CallerName = 'Jackie Malblanc')Or
(CallerName = 'Jeanne Peddicord')Or
(CallerName = 'Jeff Dorrance')Or
(CallerName = 'Jessica Vail')Or
(CallerName = 'Jill Garand')Or
(CallerName = 'Kelly Hardin')Or
(CallerName = 'Laura Moore')Or
(CallerName = 'Laura Wosiak')Or
(CallerName = 'Lynn Romer')Or
(CallerName = 'Malblanc Martin')Or
(CallerName = 'Monica Leighty')Or
(CallerName = 'Regina Carraher')Or
(CallerName = 'Robin Welling')Or
(CallerName = 'Rochelle Myers')Or
(CallerName = 'Ryan Tibbs')Or
(CallerName = 'Sonya Hughes')Or
(CallerName = 'James Tansor')Or
(CallerName = 'Renee Lowe')
--order by
--datepart(Month,GtCalcDate)desc,
--datepart(Year,GtCalcDate)desc,callername asc
)Monthly
JOIN
( --Yearly Calls
SELECT
datepart(Month,GtCalcDate) As [Month],
datepart(Year,GtCalcDate) As [Year],
CallerName,
Sum (TalkDuration) /60 As TalkTimeTot,
--sum (TalkDuration) /60 /@BusDay As AvgCallLengthDay,
SUM(CASE WHEN Direction = '2' and LEN(Targetnum) >= 11 THEN 1 ELSE 0 END) AS [TotLDCallsPerYear],
(select SUM(CASE WHEN datename(Weekday, q.GtCalcDate) = 'Saturday' or datename(Weekday, q.GtCalcDate) = 'Sunday' THEN 0 ELSE 1 END)
from (select distinct GtCalcDate from cdrmain )q)AS yeardaycount,
A.DayCount As BusDayCount
FROM CDRMAIN
Inner Join (
select Month(GtCalcDate) As GTMonth,
Year(GtCalcDate) As GTYear,
SUM(CASE WHEN datename(Weekday, q.GtCalcDate) In ('Saturday', 'Sunday')
THEN 0
ELSE 1
END) As DayCount
from (select distinct GtCalcDate from cdrmain) q
Group By Month(GtCalcDate), Year(GtCalcDate)
) As A
On Month(GtCalcDate) = A.GTMonth
And Year(GtCalcDate) = A.GTYear
Where Len (TargetNum) >= 11 and datepart(year,GtCalcDate)='2006'
GROUP BY datepart(Month,GtCalcDate),
datepart(Year,GtCalcDate), CallerName,a.daycount
HAVING (CallerName = 'Beth Scharstein')Or
(CallerName = 'Betsy Enderle')Or
(CallerName = 'Christian Heilman')Or
(CallerName = 'Christine Fuka')Or
(CallerName = 'Donna Crenshaw')Or
(CallerName = 'Erin Love')Or
(CallerName = 'Jackie Malblanc')Or
(CallerName = 'Jeanne Peddicord')Or
(CallerName = 'Jeff Dorrance')Or
(CallerName = 'Jessica Vail')Or
(CallerName = 'Jill Garand')Or
(CallerName = 'Kelly Hardin')Or
(CallerName = 'Laura Moore')Or
(CallerName = 'Laura Wosiak')Or
(CallerName = 'Lynn Romer')Or
(CallerName = 'Malblanc Martin')Or
(CallerName = 'Monica Leighty')Or
(CallerName = 'Regina Carraher')Or
(CallerName = 'Robin Welling')Or
(CallerName = 'Rochelle Myers')Or
(CallerName = 'Ryan Tibbs')Or
(CallerName = 'Sonya Hughes')Or
(CallerName = 'James Tansor')Or
(CallerName = 'Renee Lowe')
--order by
--datepart(Month,GtCalcDate)desc,
--datepart(Year,GtCalcDate)desc,callername asc
)Yearly on Yearly.CallerName = Monthly.CallerName
Join
(SELECT
datepart(Month,GtCalcDate) As [Month],
datepart(Year,GtCalcDate) As [Year],
CallerName,
Sum (TalkDuration) /60 As TalkTimeTot,
--sum (TalkDuration) /60 /@BusDay As AvgCallLengthDay,
SUM(CASE WHEN Direction = '2' and LEN(Targetnum) >= 11 THEN 1 ELSE 0 END) AS [TotLDDailyCalls],
(select SUM(CASE WHEN datename(Weekday, q.GtCalcDate) = 'Saturday' or datename(Weekday, q.GtCalcDate) = 'Sunday' THEN 0 ELSE 1 END)
Where Len (TargetNum) >= 11 and GtCalcDate like '2006-11-06%'
GROUP BY GtCalcDate, CallerName,talkduration
HAVING (CallerName = 'Beth Scharstein')Or
(CallerName = 'Betsy Enderle')Or
(CallerName = 'Christian Heilman')Or
(CallerName = 'Christine Fuka')Or
(CallerName = 'Donna Crenshaw')Or
(CallerName = 'Erin Love')Or
(CallerName = 'Jackie Malblanc')Or
(CallerName = 'Jeanne Peddicord')Or
(CallerName = 'Jeff Dorrance')Or
(CallerName = 'Jessica Vail')Or
(CallerName = 'Jill Garand')Or
(CallerName = 'Kelly Hardin')Or
(CallerName = 'Laura Moore')Or
(CallerName = 'Laura Wosiak')Or
(CallerName = 'Lynn Romer')Or
(CallerName = 'Malblanc Martin')Or
(CallerName = 'Monica Leighty')Or
(CallerName = 'Regina Carraher')Or
(CallerName = 'Robin Welling')Or
(CallerName = 'Rochelle Myers')Or
(CallerName = 'Ryan Tibbs')Or
(CallerName = 'Sonya Hughes')Or
(CallerName = 'James Tansor')Or
(CallerName = 'Renee Lowe')
[b]
)Daily ON Yearly.CallerName=Daily.CallerName[/b]
Group By yearly.callername,monthly.localcallcount,Yearly.TotLDCallsPerYear,monthly.year,daily.TotLDDailyCalls
monthly.month