如何在SQL Server 2017中使用dateadd函数

时间:2017-12-20 01:32:53

标签: sql sql-server sql-server-2017

我正在尝试使用DATEADD函数在SQL Server中添加字符类型。

我想要变量的下个月的第25个。

实施例

DECLARE @Date char(6)
SET @Date = '201712'

我想要结果= 20180125

DECLARE @Date char(6)
SET @Date = '201801'

我想要结果= 20180225

提前致谢

2 个答案:

答案 0 :(得分:2)

通过使用EOMONTH函数将“01”添加到yyyymm字符串来获取月末日期,并为其添加25天。

select dateadd(day,25,eomonth(@date+'01'))

答案 1 :(得分:2)

这个怎么样?

dateadd(month, 1, dateadd(day, 25, cast(@date + '01' as date)))

您可以将其缩短为:

dateadd(month, 1, cast(@date + '25' as date))