次のコマンドを使用して、SQL ストアド プロシージャ内の変数に現在の日付を取得しようとしています。
DECLARE @LastChangeDate as date
SET @LastChangeDate = SELECT GETDATE()
これにより、次のエラーが表示されます:「'SELECT' 付近の構文が正しくありません」
これは私がこれまでに作成した最初のストアド プロシージャであるため、SQL 内で変数がどのように機能するかについてよくわかりません。
あなたは必要ありませんSELECT
DECLARE @LastChangeDate as date
SET @LastChangeDate = GetDate()
使わGetDate()
ないだけSelect GetDate()
DECLARE @LastChangeDate as date
SET @LastChangeDate = GETDATE()
しかし、それがSQL Serverであれば、宣言と同じステップで初期化することもできます...
DECLARE @LastChangeDate date = getDate()
DECLARE @LastChangeDate as date
SET @LastChangeDate = GETDATE()
SELECT @LastChangeDate = GETDATE()
こんな用途にも使えますCURRENT_TIMESTAMP
。
BOL CURRENT_TIMESTAMP
によるとANSI SQL
、GETDATE()
DECLARE @LastChangeDate AS DATE;
SET @LastChangeDate = CURRENT_TIMESTAMP;