Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Разбивка периода по месяцам  [new]
Mitresky
Member

Откуда: Раменское
Сообщений: 52
Всем привет! Кто-нить уже делал разбивку периода по месяцам?
Например, нужно найти сколько проектов закрылось в отчетном периоде с разбивкой по месяцам

Таблица проектов:
id Subj CloseDate
1 Дом 21.11.2012
2 Лес 25.11.2012
3 Дерево 12.12.2012
4 Жесть 02.02.2013
5 Кокос 12.02.2013
6 Дача 14.02.2013
7 Тест 20.02.2013

Отчетный период берем с 01.11.2012 по 17.02.2013
Должно получится:
Ноябрь 2012 Декабрь 2012 Февраль 2013
2 1 3
20 фев 13, 13:10    [13954237]     Ответить | Цитировать Сообщить модератору
 Re: Разбивка периода по месяцам  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
Mitresky
Всем привет! Кто-нить уже делал разбивку периода по месяцам?
Например, нужно найти сколько проектов закрылось в отчетном периоде с разбивкой по месяцам

Таблица проектов:
id Subj CloseDate
1 Дом 21.11.2012
2 Лес 25.11.2012
3 Дерево 12.12.2012
4 Жесть 02.02.2013
5 Кокос 12.02.2013
6 Дача 14.02.2013
7 Тест 20.02.2013

Отчетный период берем с 01.11.2012 по 17.02.2013
Должно получится:
Ноябрь 2012 Декабрь 2012 Февраль 2013
2 1 3
А зачем по горизонтали, если весь сервер заточен на фиксированное количество колонок, но на любое количество строк?
Вам надо
SELECT DATEADD(MONTH,DATEDIFF(MONTH,0,CloseDate),0), COUNT(*)
FROM [Таблица проектов]
GROUP BY DATEADD(MONTH,DATEDIFF(MONTH,0,CloseDate),0);
IMHO
20 фев 13, 13:16    [13954303]     Ответить | Цитировать Сообщить модератору
 Re: Разбивка периода по месяцам  [new]
Mitresky
Member

Откуда: Раменское
Сообщений: 52
iap,

Ну что я тут могу поделать, заказчик хочет так. Но и на этом спасибо, может что-нить сделать из этого.
20 фев 13, 14:58    [13955166]     Ответить | Цитировать Сообщить модератору
 Re: Разбивка периода по месяцам  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
Mitresky
iap,

Ну что я тут могу поделать, заказчик хочет так. Но и на этом спасибо, может что-нить сделать из этого.
PIVOT
20 фев 13, 16:43    [13956076]     Ответить | Цитировать Сообщить модератору
 Re: Разбивка периода по месяцам  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22552
Mitresky
Ну что я тут могу поделать, заказчик хочет так
Спросите у него, как должен выглядеть результат, если пользователь задаст период 5 лет
20 фев 13, 16:47    [13956115]     Ответить | Цитировать Сообщить модератору
 Re: Разбивка периода по месяцам  [new]
iiyama
Member

Откуда:
Сообщений: 642
Mitresky,
или используйте генератор отчетов с возможностью pivot
20 фев 13, 17:11    [13956342]     Ответить | Цитировать Сообщить модератору
 Re: Разбивка периода по месяцам  [new]
Cygapb-007
Member

Откуда:
Сообщений: 1677
или посмотрите 13852314 :)
20 фев 13, 18:34    [13956889]     Ответить | Цитировать Сообщить модератору
 Re: Разбивка периода по месяцам  [new]
Mitresky
Member

Откуда: Раменское
Сообщений: 52
В
PIVOT
можем только сами указать количество столбцов? Динамически никак? Ну, чтобы он сам определил, сколько столбцов нужно?
21 фев 13, 13:22    [13960549]     Ответить | Цитировать Сообщить модератору
 Re: Разбивка периода по месяцам  [new]
iap
Member

Откуда: Москва
Сообщений: 47000
Mitresky
В
PIVOT
можем только сами указать количество столбцов? Динамически никак? Ну, чтобы он сам определил, сколько столбцов нужно?
Только в динамическом SQL можно создать запрос с любым нужным количеством столбцов.
21 фев 13, 14:32    [13961210]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить