DECLARE @Forms TABLE
(
DateSubmitted DATE,
NumberSubmitted INT
);
INSERT INTO @Forms (DateSubmitted, NumberSubmitted) VALUES ('2014-11-04', 5);
INSERT INTO @Forms (DateSubmitted, NumberSubmitted) VALUES ('2014-11-09', 2);
INSERT INTO @Forms (DateSubmitted, NumberSubmitted) VALUES ('2014-11-11', 4);
INSERT INTO @Forms (DateSubmitted, NumberSubmitted) VALUES ('2014-11-12', 12);
INSERT INTO @Forms (DateSubmitted, NumberSubmitted) VALUES ('2014-11-17', 1);
INSERT INTO @Forms (DateSubmitted, NumberSubmitted) VALUES ('2014-11-18', 5);
INSERT INTO @Forms (DateSubmitted, NumberSubmitted) VALUES ('2014-11-25', 8);
WITH cteAllDates (ADate) AS
(
SELECT
CAST('2014-11-01' AS DATE) 'ADate'
UNION ALL
SELECT
DATEADD(DAY, 1, ADate)
FROM cteAllDates a
WHERE DATEADD(dd, 1, ADate) < CAST('2014-12-01' AS DATE)
)
SELECT
alldates.ADate 'SubmissionDate',
COALESCE(specificdates.NumberSubmitted, 0) 'NumberSubmitted'
FROM cteAllDates alldates
LEFT JOIN @Forms specificdates
ON alldates.ADate = specificdates.DateSubmitted;