![](/img/trans.png)
[英]How to create a stored procedure to copy data from a query to a temporary table?
[英]Create a data set table from a stored procedure temporary table
我有一系列存儲過程,所有這些存儲過程都輸出結果集以及在每個存儲過程中創建的3/4個臨時表。
我想做的是使用其中一個臨時表中的數據創建SAS數據集表。 目前,我要參考的只是sp的結果集。
此刻的代碼使我得到了sp結果集:
DATA table_name
SQL "EXEC sp_name '" & %parameter1 & "', '" & %parameter2 & "','" & %parameter3 & "'" ;
RUN;
因此,除了引用示例中的結果集之外,我還可以引用臨時表嗎?
謝謝!
您可以使用SQL passthrough語句實現此目的:
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
=替換為由於執行存儲過程而創建的臨時表的名稱
替換上面的值並執行該語句后,應該會看到一個新的SAS數據集。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.