У меня есть столбец в моей таблице sql server 2005, который должен содержать количество месяцев, в течение которых сотрудник находился на службе.Как получить число в месяцах между двумя датами в sql server 2005
Поскольку у меня также есть дата, когда сотрудник был занят, я хочу, чтобы столбец «months_In_Service» был вычисленным столбцом.
Теперь, если я использую DATEDIFF(month,[DateEngaged],GETDATE())
в качестве формулы для месяцев в столбце, рассчитанном на обслуживание, результаты верны несколько раз и в другие неправильные.
Что было бы лучшим надежным способом получить количество месяцев между значением DateEngaged и текущей датой? Какую формулу я должен использовать в моем вычисляемом столбце?
Не могли бы вы привести несколько примеров того, что вы имеете в виду, когда говорите, что иногда они правильные и что-то вроде им они не являются. –
Не могли бы вы отредактировать это (редактировать) и установить sql-server-2005 (или даже просто sql-сервер)? Обратите внимание на тире. Здесь есть пользователи, которые игнорируют вопросы SQL Server (а не их опыт), но интересуются вопросами SQL. –
DateEngaged = '12/20/2009 " CurrentDate = '1/13/2010" Это дает мне месяцы в обслуживании как 1, используя формуляр «датированный» (месяц, [DateEngaged], getdate() + (1)) » Он также дает годы в эксплуатации как 1, используя формулу «датированный (год, [DateEngaged], getdate() + (1))» – StackTrace