Microsoft SQL Server 2008
select months_between (TO_DATE('1992-09-12','yyyy','mm','dd'), TO_DATE('1991-08-23','yyyy','mm','dd') ) "months" from sales
Помощь
В SQL Server 2008 используйте DATEDIFF():
DATEDIFF()
SELECT DATEDIFF(mm, '23-08-1991', '12-09-1992') as "months" FROM sales
Я думаю, MONTHS_BETWEEN - это оракул.
MONTHS_BETWEEN
MONTHS_BETWEEN зависит от Oracle.Эквивалентом функции Oracle MONTHS_BETWEEN в SQL Server является функция DATEDIFF.Функция DATEDIFF возвращает количество границ даты и времени, пересекаемых между двумя указанными датами, и принимает 3 аргумента:
DATEDIFF
DATEDIFF ( datepart, startdate, enddate )
никогда не слышал о month_between в TSQL.
Я обычно так и делаю (используя даты, которые вы указали в своем коде):
SELECT DATEDIFF(month, '23-8-1991', '12-9-1992')