Как добавить годы к дате в SQL?

Как добавить 2 года к дате в SQL.

select left(cast(D as datetime) ,11)  from table

В приведенном выше запросе, как я могу добавить 2 года.

Выход,

Jan  1 2012
Jan  2 2012
Jan  3 2012
Jan  4 2012

но я хочу вывести как,

Jan  1 2014
Jan  2 2014
Jan  3 2014
Jan  4 2014

Спасибо


person Srinivas    schedule 04.02.2014    source источник


Ответы (3)


DateAdd() — нужная вам функция http://technet.microsoft.com/en-us/library/ms186819.aspx

SELECT DateAdd(yy, 2, Cast(d As datetime))
person gvee    schedule 04.02.2014
comment
@MaxWilliams вопрос помечен sql-server - person gvee; 04.02.2014
comment
Упс, так оно и есть. Виноват. - person Max Williams; 04.02.2014

наконец, я получил, запрос SELECT left (DateAdd (yy, 2, Cast (d As datetime)), 11) из таблицы

person Srinivas    schedule 04.02.2014

Вы можете использовать convert вместо left:

SELECT CONVERT(VARCHAR, DATEADD(year, 2, CAST(d AS DATETIME)), 107) FROM table
person SQLMason    schedule 04.02.2014