2016-11-29 61 views
0

我使用日期字符串從表中選擇數據。我想選擇所有行的更新時間戳大於或等於今天。在SAS中使用當前日期時間

我能想到的最簡單的方法是將今天的日期放在字符串中,並且工作正常。

WHERE UPDATE_DTM>'29NOV2016:12:00'DT;

但是,如果我想把今天的日期或系統日期這樣的東西,我應該放什麼? 我今天使用(),但它返回表中的所有行。我不確定這是因爲SAS中的今天()是指日期1/1/1960?我也試過& sysdate,但它返回了一條錯誤消息,好像它需要日期轉換。

WHERE UPDATE_DTM> TODAY();

任何想法?您的想法非常感謝!

+0

'今()'並不是指1960年1月1日,除非它被設置爲1960年1月1日的機器上運行它... – Joe

回答

3

DATETIME()是日期時間等效的TODAY()的(但包括當前時間)。你也可以使用dhms(TODAY(),0,0,0),如果你想有效午夜(或者,你上面的例子,dhms(TODAY(),12,0,0)拿到今天中午)。

+0

謝謝!它幫助了很多。我想設置另一個變量BEG_DATE = TODAY(),然後轉換日期格式。您提供的一個更容易和偉大工程! –

相關問題