Я использую SQL Server 2008 R2 и пытаюсь сделать несколько учетных записей в разных столбцах и не могу понять, как заставить его работать должным образом. У меня есть два запроса, которые работают независимо, но возникают проблемы при попытке их комбинировать. Попытка подсчитать количество билетов, открытых и закрытых в течение каждой отдельной даты, при прохождении через @StartDate и @EndDate.Функция подсчета в нескольких столбцах по дате (SQL Server)
Например, мой первый запрос: (мы назначаем определенные коды для разграничения между разными причинами, которые создаются, просто хотели выбросить это там, если эта строка создает путаницу. Также наши даты являются форматом даты и времени, использование CAST)
SELECT
Cast(CreateDate AS Date) AS 'Date',
Count(CreateDate) AS '# Created'
FROM dbo.Tickets
WHERE
Cast(CreateDate AS Date) >= @StartDate and
Cast(CreateDate AS Date) <[email protected] and
(Reason >= 36 and Reason <= 41 OR Reason = 17)
GROUP BY Cast(CreateDate AS Date)
ORDER BY 'Date'
Который дает следующие результаты:
Date # Created
---------- -------------
5/1/2013 396
5/2/2013 418
5/3/2013 288
5/4/2013 28
5/5/2013 100
Мой второй запрос является точно такой же, как запрос «Дата создания», просто заменяется на «Решенный Дата», где «CreateDate» расположен. Однако в день 4/4/2013 билетов не было.
Как объединить эти два запроса в один и заставить его возвращать набор результатов, как показано ниже?
Date # Created # Resolved
---------- ------------- -------------
5/1/2013 396 400
5/2/2013 418 322
5/3/2013 288 280
5/4/2013 28 0
5/5/2013 100 11
Я думаю, что часть, которая меня отбрасывает, заключается в том, что в таблице нет разрешенной даты 5/4/2013. Любая помощь приветствуется. Благодаря!
Вам нужно указать даты в '' CASE '' так же, как в деле 'ON'. – HABO
Да, да. Благодарю. Сделано редактирование. –
Удивительный! Я получил его отлично! Большое спасибо за помощь! Даже не подумал использовать CTE :) – Grummer21