تاريخ ساس - تحويل اليوم () في شكل YYYYMMDD
سؤال
وكيف يمكنني تحويل تاريخ SAS مثل "30JUL2009"d
في شكل YYYYMMDD
(مثل 20090730)؟
وهكذا على سبيل المثال:
data _null_;
format test ?????;
test=today();
put test=;
run;
هل تعطيني "اختبار = 20090730" في سجل ...
المحلول
data _null_;
format test yymmddn8.;
test=today();
put test=;
run;
نصائح أخرى
%let expectdate1=%sysfunc(putn(%eval(%sysfunc(today())-1),yymmddn8.));
وترغب في استخدام تنسيق yymmddn8. وسائل 'ن' <م> لا فاصل م>.
http://support.sas.com/kb/24/610.html يمكنك تحديد B لفارغا، C لالقولون، D للشرطة، N بدون فاصل، P لفترة، أو S لمائلة.
وهنا كيف فعلت ذلك في الكلي، ولكن بالتأكيد يجب أن يكون هناك تنسيق ؟؟ !!!
%let today=%sysfunc(compress(%sysfunc(today(),yymmddd10.),'-'));
وعلى غريب - وyymmdd8 INFORMAT. يعطي نتيجة YYYYMMDD، في حين أن yymmdd8 FORMAT. يعطي نتيجة YY-MM-DD !!
وهناك هذا واحد التي ينبغي أن تفعل خدعة جدا
%let today=%sysfunc(today(),yymmddn8.);
%put &today.;
كل شيء على الرابط أدناه
ويمكنك ان ترى كل تنسيقات التاريخ والوقت في علامة التبويب تعليمات عند إدخال "التاريخ" إلى علامة التبويب فهرس، ثم حدد "تنسيقات التاريخ والوقت '