我正在玩弄操作datetime
變量。我似乎無法找到更新可變年份到當年的datetime
的方法。更新日期時間變量的年份
比如我有
2007-12-01 00:00:00.000
但我想這是
2012-12-01 00:00:00.000 (The current year were in)
我一直在玩datediff
,但我似乎無法打釘。
任何意見,將不勝感激。
感謝
我正在玩弄操作datetime
變量。我似乎無法找到更新可變年份到當年的datetime
的方法。更新日期時間變量的年份
比如我有
2007-12-01 00:00:00.000
但我想這是
2012-12-01 00:00:00.000 (The current year were in)
我一直在玩datediff
,但我似乎無法打釘。
任何意見,將不勝感激。
感謝
DECLARE @date datetime = '2007-01-09T12:34:56'
SELECT @date = DATEADD(yyyy, DATEDIFF(yyyy, @date, GETDATE()), @date)
SELECT @date
也許是這樣的:
對於SQL Server 2008+
DECLARE @date DATETIME='2007-12-01 00:00:00.000'
SET @date=DATEADD(year,DATEDIFF(year,@date,GETDATE()),@date)
對於SQL Server 2005
DECLARE @date DATETIME
SET @date='2007-12-01 00:00:00.000'
SET @date=DATEADD(year,DATEDIFF(year,@date,GETDATE()),@date)
謝謝Arion,工作很好。 – JGreasley
這裏有一個簡單的方法:
select @yourDate = dateadd(year, datepart(year, getdate()) - datepart(year, @yourDate), @yourDate)
謝謝你AdaTheDev。發現。 – JGreasley