如何在SQL中计算天到月?

如何在SQL中计算天到月?,sql,sql-server,Sql,Sql Server,我想用下面的方法计算从几天到几个月的时间 我正在使用此代码获取月数: DECLARE @Date datetime = '2017-12-06' SELECT CAST(DATEDIFF(M, @Date, GETDATE()) AS varchar) + ' Months and ' + CAST(DATEDIFF(D, @Date, DATEADD(M, - DATEDIFF(M, @Date, GETDATE()), GETDATE())) AS varcha

我想用下面的方法计算从几天到几个月的时间

我正在使用此代码获取月数:

DECLARE @Date datetime = '2017-12-06'

SELECT
    CAST(DATEDIFF(M, @Date, GETDATE()) AS varchar) + ' Months and ' + 
        CAST(DATEDIFF(D, @Date, DATEADD(M, - DATEDIFF(M, @Date, GETDATE()), GETDATE())) AS varchar) + ' Days'
输出:

(Result)
3 Months and 4 Days
它工作,但我需要这样的输出

90 days + 4 days = 94days
预期产出:

Month=3.09041

提前感谢

平均来说,一个月有30.43天(365.25/12)。这么做怎么样

SELECT DATEDIFF(days, @Date, GETDATE()) / (365.25 / 12)
这不会产生精确的结果,但它是对十进制月份的一个很好的估计