Я использую SQL Server 2008 R2. У меня есть таблица с множеством дат, некоторые в прошлом, некоторые в будущем. То, что я хотел бы сделать, это обновить их, чтобы даты были «следующей» датой по сравнению с сегодняшним днем.SQL Server 2008 R2: обновление прошлых дат до 'следующей' даты
В приведенном примере текущая дата «2014-02-09»
Current Value Desired Value
-------------------------------------------------
'2010-01-06' '2015-01-06' (Updated to 2015)
'2008-03-28' '2014-03-28' (Updated to 2014)
я бы необходимо учитывать даты на 29 февраля, как раз, чтобы сделать это проще!
Каков наилучший способ для этого?
Рассчитайте количество лет между сегодняшним днем и x, а затем добавьте это количество лет в x. – dnoeth
@dnoeth: это не учитывает, что итоговая дата может быть раньше, чем «текущая дата», и в этом случае следующий год должен быть взят (посмотрите на первую строку). –
@Tim Schmelter: Да, это количество лет (то есть возраст) плюс один :-) – dnoeth