20

次のコマンドを使用して、SQL ストアド プロシージャ内の変数に現在の日付を取得しようとしています。

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

これにより、次のエラーが表示されます:「'SELECT' 付近の構文が正しくありません」

これは私がこれまでに作成した最初のストアド プロシージャであるため、SQL 内で変数がどのように機能するかについてよくわかりません。

4

5 に答える 5

37

あなたは必要ありませんSELECT

DECLARE @LastChangeDate as date
SET @LastChangeDate = GetDate()
于 2012-07-30T17:00:22.273 に答える
12

使わGetDate()ないだけSelect GetDate()

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

しかし、それがSQL Serverであれば、宣言と同じステップで初期化することもできます...

DECLARE @LastChangeDate date = getDate()
于 2012-07-30T17:00:05.123 に答える
3
DECLARE @LastChangeDate as date 
SET @LastChangeDate = GETDATE() 
于 2012-07-30T16:59:38.717 に答える
2
SELECT @LastChangeDate = GETDATE()
于 2012-07-30T16:59:45.370 に答える
1

こんな用途にも使えますCURRENT_TIMESTAMP

BOL CURRENT_TIMESTAMPによるとANSI SQLGETDATE()

DECLARE @LastChangeDate AS DATE;
SET @LastChangeDate = CURRENT_TIMESTAMP;
于 2015-10-14T20:31:00.830 に答える