2012-07-30 55 views
10

我嘗試使用以下命令用戶GETDATE()把當前的日期到SQL變量

DECLARE @LastChangeDate as date 
SET @LastChangeDate = SELECT GETDATE() 

這給了我下面的錯誤,以獲取當前日期到SQL存儲過程中的變量:「 「SELECT」附近的語法錯誤「

這是我寫過的第一個存儲過程,所以我不熟悉變量如何在SQL內部工作。

+0

什麼是您所使用的SQL方言? – 2012-07-30 16:59:21

+0

我想,這是t-sql。 – heximal 2012-07-30 17:00:35

+1

7個問題,**沒有**接受答案? – egrunin 2012-07-30 17:01:49

回答

22

你不」 t需要SELECT

DECLARE @LastChangeDate as date 
SET @LastChangeDate = GetDate() 
+0

設置「AT」exportedDate ='20160427' 設置「AT」date1 = GETDATE(),「AT」exportedDate - 7個月 是否可以這樣呢? – 2016-06-29 09:29:52

+0

SET「AT」date1 = DATEADD(Month,1,「AT」exportedDate)剛剛通過嘗試找到 – 2016-06-29 09:32:05

1
SELECT @LastChangeDate = GETDATE() 
7

只需使用GetDate()Select GetDate()

DECLARE @LastChangeDate as date 
SET @LastChangeDate = GETDATE() 

但如果它的SQL Server,您也可以在初始化相同的步驟聲明...

DECLARE @LastChangeDate date = getDate() 
+1

初始化與聲明相同的步驟是2008+? – msmucker0527 2012-07-30 17:10:35

+0

我想通了,很容易修復。只是擺脫了SELECT語句:)謝謝你們! – NealR 2012-07-30 17:31:32

1

您也可以使用CURRENT_TIMESTAMP

根據BOLCURRENT_TIMESTAMPANSI SQL euivalent到GETDATE()

DECLARE @LastChangeDate AS DATE; 
SET @LastChangeDate = CURRENT_TIMESTAMP;