這實際上是我想在 SAS EG 中的查詢生成器中輸入的內容。我正在嘗試過濾具有以下日期的資料集:
SEP2021
AUG2021
JUL2021
etc…
我正在嘗試使用查詢構建器通過 WHERE 陳述句對其進行過濾。我希望表格中只有上個月的結果。所以現在運行它應該會得到 SEP2021,下個月運行它會得到 OCT2021,等等......
我怎樣才能用WHERE宣告來做到這一點?
uj5u.com熱心網友回復:
使用intnx(). 假設所有日期都從當月的第一天開始:
where date = intnx('month', today(), -1, 'B');
如果他們沒有:
where intnx('month', date, 0, 'B') = intnx('month', today(), -1, 'B');
uj5u.com熱心網友回復:
您可以使用 INTCK 函式來計算兩個日期之間的日歷間隔數。
例子:
data have;
input datestring $; datalines;
SEP2021
AUG2021
JUL2021
run;
proc sql;
create table want as
select * from have
where intck('month',input(datestring,monyy7.),today()) = 1
;
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/316305.html
