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
帮助
答案 0 :(得分:4)
在SQL Server 2008中,使用DATEDIFF()
:
SELECT DATEDIFF(mm, '23-08-1991', '12-09-1992') as "months"
FROM sales
我认为MONTHS_BETWEEN
是神谕。
答案 1 :(得分:2)
在TSQL中从未听说过months_between。
我通常会这样(使用您在代码中提供的日期):
SELECT DATEDIFF(month, '23-8-1991', '12-9-1992')
答案 2 :(得分:2)
MONTHS_BETWEEN
是特定于Oracle的。 SQL Server中Oracle的MONTHS_BETWEEN
函数的等价物是DATEDIFF
函数。 DATEDIFF
函数返回两个指定日期之间跨越的日期和时间边界的数量,它需要3个参数:
DATEDIFF ( datepart, startdate, enddate )