CREATE VIEW dbo.media_type_count_by_week
AS
SELECT TOP 100 PERCENT [Week #], [Week Starting On], name AS [Media Type], SUM(enrollment_count) AS [Media Type Report Count]
FROM
(SELECT datediff(d, '6/22/2003', date_created) / 7 AS [Week #], dateadd(d, floor(datediff(d, '6/22/2003', date_created) / 7) * 7, '6/22/2003')
AS [Week Starting On], media_type.name, COUNT(dbo.enrollment_info_real.id) AS enrollment_count
FROM dbo.enrollment_info_real
JOIN dbo.enrollment_info_media_type ON (enrollment_info_id = dbo.enrollment_info_real.id)
JOIN
dbo.media_type ON (media_type_id = dbo.media_type.id)
GROUP BY datediff(d, '6/22/2003', date_created) / 7, dateadd(d, floor(datediff(d, '6/22/2003', date_created) / 7) * 7, '6/22/2003'),
dbo.media_type.name
UNION
SELECT datediff(d, '6/22/2003', date_created) / 7 AS [Week #], dateadd(d, floor(datediff(d, '6/22/2003', date_created) / 7) * 7, '6/22/2003')
AS [Week Starting On], media_type_other, COUNT(dbo.enrollment_info_real.id)
FROM dbo.enrollment_info_real
WHERE (media_type_other IS NOT NULL) AND media_type_other NOT IN ('`')
GROUP BY datediff(d, '6/22/2003', date_created) / 7, dateadd(d, floor(datediff(d, '6/22/2003', date_created) / 7) * 7, '6/22/2003'), media_type_other), media_type_count
WHERE (name IS NOT NULL) AND (name <> 'null') AND (name <> 'Other')
GROUP BY [Week #], [Week Starting On], name
ORDER BY [Week #] DESC, [Media Type Report Count] DESC, name
|