Sas: как форматировать значения даты в proc sql


Вы можете использовать оператор FORMAT в PROC SQL в SAS для форматирования значений даты определенным образом.

В следующем примере показано, как использовать оператор FORMAT на практике.

Пример: форматирование значений даты в PROC SQL

Предположим, у нас есть следующий набор данных в SAS, который содержит информацию о дате начала рекламных акций в розничном магазине и общем объеме продаж:

 /*create dataset*/
data my_data;
    format start_date date9. ;
    input start_date: date9. dirty;
    datalines ;
01JAN2023 22
01FEB2023 16
14MAR2023 11
01MAY2023 32
13MAY2023 15
18AUG2023 11
20OCT2023 36
;
run ;

/*view dataset*/
proc print data =my_data;

Мы можем использовать PROC SQL с оператором FORMAT , чтобы выбрать все строки в этом наборе данных и отобразить значения в столбце start_date в формате ММ/ДД/ГГ :

 /*select all rows and format start_date column using mmddyy8.*/ 
proc sql ;
    select start_date format= mmddyy8. , dirty
    from my_data;
quit ; 

Обратите внимание, что значения в столбце start_date теперь отображаются в формате ММ/ДД/ГГ .

Вы также можете использовать оператор FORMAT для форматирования новых переменных, созданных с помощью PROC SQL .

Например, следующий код показывает, как создать новую переменную с именем end_date , добавив 7 дней к start_date и отформатировав ее как date9. вместо:

 /*create new end_date column with specific format*/ 
proc sql ;
    select start_date format= mmddyy8. , start_date+7 as end_date format= date9. , dirty
    from my_data;
quit ; 

Обратите внимание, что мы смогли указать формат переменных start_date и end_date , используя оператор FORMAT несколько раз.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в SAS:

SAS: как использовать оператор WHERE в PROC SQL
SAS: как использовать оператор IN в PROC SQL
SAS: как использовать UPDATE в PROC SQL
SAS: как использовать CONTAINS в PROC SQL

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *