Я хотел бы знать, есть ли у кого-то функция в SQL, чем заданная начальная дата и день недели (например, вторник), она может рассчитать, когда наступит следующая дата, начиная с начальной даты, которая будет вторником.
Например:
Дано:
@initialdate=01-02-2013 --Сегодня пятница
@dayofweek = 3 --3 для среды, 1 для понедельника и 7 для воскресенья.
Возврат: дата = 06-02-2013
Может быть, я еще не очень хорошо объяснил. Я имею в виду функцию, для которой параметр @dayofweek=3 (для среды), и тогда я могу указать много разных дат:
01-02-2013, то если @dayofweek=3, то следующая дата будет 06-02-2013.
02-02-2013, то если @dayofweek=3, то следующая дата будет 06-02-2013.
03-02-2013, то если @dayofweek=3, то следующая дата будет 06-02-2013.
02-04-2013, то если @dayofweek=3, то следующая дата будет 02-06-2013.
05-02-2013, то если @dayofweek=3, то следующая дата будет 06-02-2013.
02-06-2013, то если @dayofweek=3, то следующая дата будет 13-02-2013.
07-02-2013, то если @dayofweek=3, то следующая дата будет 13-02-2013.
DateAdd(Day, 1, myDate)
? - person Dan Pichelman   schedule 15.05.2013datename(dw,myDate)
вернуть название дня недели — это действительно не так уж и сложно. - person Michael Gardner   schedule 15.05.2013