Why stop there?-- Prepare sample data. This is NOT part of the query!DECLARE @slData TABLE ( salesexec int, sales int, dateofsale datetime )SET DATEFORMAT MDYINSERT @slDataSELECT 1, 1, '01/02/2009' UNION ALLSELECT 1, 0, '02/02/2009' UNION ALLSELECT 2, 2, '01/02/2009'DECLARE @slSalesmen TABLE ( salesexec int, Name varchar(20), location varchar(20) )INSERT @slSalesmenSELECT 1, 'Richard', 'Location1' UNION ALLSELECT 2, 'John', 'Location2'-- Here is your view definition querySELECT s.Name, s.Location, SUM(CASE WHEN d.DateOfSale >= s.ThisYear AND d.DateOfSale < s.Tomorrow THEN d.Sales ELSE 0 END) AS [Year to Date], SUM(CASE WHEN d.DateOfSale >= s.LastMonth AND d.DateOfSale < s.ThisMonth THEN d.Sales ELSE 0 END) AS [Last month], SUM(CASE WHEN d.DateOfSale >= s.ThisMonth AND d.DateOfSale < s.Tomorrow THEN d.Sales ELSE 0 END) AS [Month to Date]FROM ( SELECT SalesExec, Name, Location, DATEADD(DAY, DATEDIFF(DAY, 0, GETDATE()), 1) AS Tomorrow, DATEADD(YEAR, DATEDIFF(YEAR, 0, GETDATE()), 0) AS ThisYear, DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()), 0) AS ThisMonth, DATEADD(MONTH, DATEDIFF(MONTH, 31, GETDATE()), 0) AS LastMonth FROM @slSalesMen ) AS sLEFT JOIN @slData AS d ON d.SalesExec = s.SalesExecGROUP BY s.SalesExec, s.Name, s.Location
N 56°04'39.26"E 12°55'05.63"