DECLARE @today as smalldatetime
SELECT @today = GetDate()
Но мне нужен перевод оракула
Ответ 1
Oracle использует SYSDATE, и там есть стандарт ANSI CURRENT_TIMESTAMP (поддерживаемый как SQL Server, так и Oracle, помимо других), чтобы получить текущую дату и время.
v_today DATE;
SELECT SYSDATE
INTO v_today
FROM DUAL;
... был бы эквивалентен TSQL, который вы опубликовали. Oracle использует предложение INTO для заполнения переменных, где тип данных переменных должен соответствовать позиции столбца в предложении SELECT.
Ответ 2
Не строгий перевод, я предпочитаю следующую конструкцию в Oracle:
v_today date; -- needs to go where variables are declared
v_today := sysdate; -- used where code is run.