2015-02-15 2 views
0

Очень новое для программирования SAS. Хотите начать с чего-то простого - написать макрос, который запускает запрос append. Это все, что мне удалось выяснить. Где я иду не так?Запись макроса в SAS для создания таблицы

%MACRO APPENDTEST; 
    PROC SQL; 
     CREATE TABLE WORK.APPENDTEST AS 
     SELECT * 
     FROM WORK.MONTHLY_SALES_SUMMARY 
    QUIT; 
%MEND APPENDTEST; 
+0

Что делает этот макрос и как он отличается от ожидаемого результата? Пожалуйста, предоставьте дополнительную информацию, чтобы этот вопрос не закрывался как слишком широкий. – TylerH

+0

Просто хочу запустить инструкцию proc sql, ничего больше. Просто хочу начать учиться, поэтому я подумал, что начну с чего-то простого. Когда я запускаю код, я не получаю никаких ошибок, но я тоже не вижу новую таблицу под названием AppendTest. –

+0

Почему вы пишете это в макросе? Избавьтесь от макро-части вещей и просто запустите код из 'proc sql' в' quit'. Большинство программ SAS будут выполняться без макросов - это не похоже на [tag: c], где вам нужна оболочка функции или еще много чего. – Joe

ответ

1

Вы создали макрос, но выполнили его. Эта функциональность, аналогичная функции на других языках, позволяет макросу компилировать и выполнять и в разное время.

Добавление в следующую строку вызовет макрос.

%appendtest; 
+0

Я отредактировал вопрос, потому что снова застрял ... Помогите пожалуйста. Получение кучи ошибок. Первый - операнд символа был найден в функции% EVAL или% IF, где требуется числовой операнд. –

+0

Ваш вопрос совсем другой, что вы должны опубликовать новый вопрос. – Reeza

Смежные вопросы