2014-12-10 4 views
1

У меня есть серия хранимых процедур, все из которых выводят набор результатов вместе с указанием 3/4 временных таблиц, созданных в каждой хранимой процедуре.Создать таблицу набора данных из временной таблицы хранимой процедуры

Что я хотел бы сделать, это создать таблицу набора данных SAS, используя данные в одной из временных таблиц. На данный момент все, что мне удается установить, - это набор результатов sp.

код в тот момент, который дает мне результат зр набор:

DATA table_name 
SQL "EXEC sp_name '" & %parameter1 & "', '" & %parameter2 & "','" & %parameter3 & "'" ; 
RUN; 

Таким образом, вместо того, чтобы ссылки на результирующий набор, как в примере, я могу сослаться на временную таблицу?

Спасибо!

+0

Здравствуйте. Выполняете ли вы хранимую процедуру в SAS или что-то вроде SQL Server Management Studio? – rwking

+0

Кроме того, можете ли вы проверить следующее? Я думаю, что понимаю, но хочу быть уверенным. Ваша хранимая процедура создает временные таблицы. В настоящее время вы можете получить набор результатов в SAS, но вы также хотите получить временные таблицы в SAS. Верный? – rwking

+0

Хранимая процедура выполняется из SAS - я тестирую и построил sp в Management Studio. Вторая точка правильная - я получаю набор результатов, но также хочу таблицы temp. – steve

ответ

2

Вы можете добиться этого с помощью SQL проходного заявления:

proc sql; 
    connect to odbc as YourAlias (dsn = YourDSNName connection = SHARED); 
    execute (
      exec uspYourStoredProcedure; 
      ) by YourAlias; 

create table SAS.YourDataSet as 
    select * 
    from connection to YourAlias (
            select * 
            from #TempTableCreatedAbove 
           ); 
disconnect from YourAlias; 
quit; 

Вам нужно будет изменить пример следующим образом:

YourAlias = Дайте соединительном псевдоним

YourDSNName = Вашу системы DSN для подключения

uspYourStoredProcedure = Замените имя вашего сохраненного Процедура

YourDataSet = Введите имя для нового SAS набора данных

#TempTableCreatedAbove = Replace с именем временной таблицы, созданной в результате выполнения хранимой процедуры

Вы должны увидеть новые данные SAS после того, как вы замените приведенные выше значения и выполните инструкцию.

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