У меня есть требование написать хранимую процедуру, которая принимает дату начала, дату окончания и частоту (день, неделя, месяц, квартал, год) и выводит набор результатов на основе этих параметров. Очевидно, самая простая часть - это запрос по диапазону дат, но как вы группируете по частоте?
Итак, если у вас есть набор необработанных данных вроде этого:
Date Count
---------------------
11/15/2011 6
12/16/2011 9
12/17/2011 2
12/18/2011 1
12/18/2011 4
И я вызываю свою сохраненную процедуру следующим образом:
sp_Report «01.01.2011», «31.12.2011», «неделя»
Я бы ожидал таких результатов:
WeekOf Count
---------------------
11/19/2011 6
12/17/2011 11
12/24/2011 5
Здесь есть пара вопросов:
1) Как мне определить дата конца недели (неделя, заканчивающаяся в воскресенье)?
2) Как мне сгруппировать по этому диапазону дат WeekOf?