返回月份名称而不是整数DATEADD函数

时间:2015-05-21 15:25:43

标签: sql sql-server sql-server-2008

我在存储过程中有一个查询,我试图用它将当前日期作为字符串存储在数据库中。 例如,查询应存储:

May 2015

以下是查询:

DECLARE @daterun varchar(max)

DECLARE @DATE_AP dateTime
DECLARE @month_AP varchar(max)
DECLARE @year_AP varchar(max)

SET @DATE_AP= DATEADD(month, -1, GETDATE())
SET @year_AP = YEAR(@DATE_AP)
SET @month_AP = MONTH(@DATE_AP)


PRINT @year_AP
SELECT @daterun = 'UPDATE  [dbo].[tabimp] SET [dbo].[tabimp].[date] ='+ @month_AP+ @year_AP

EXEC (@daterun)

我意识到@month_AP会返回一个整数值。我如何返回月份的名称?

1 个答案:

答案 0 :(得分:4)

您应该使用'DateName'功能:

SET @month_AP = DATENAME(Month, @DATE_AP)
相关问题