簡體   English   中英

從存儲過程臨時表創建數據集表

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM